www.gusucode.com > 落叶冰点万能企业网站内容管理系统 V9.1 > 落叶冰点万能企业网站内容管理系统 V9.1\code\admin\adminHTML\makehtm_inc\D_kaozhan_class.asp

    <%


'**************************************************************
' 新动软网站管理系统
' 官方网站: http://www.aspcpu.com
' 系统作者: 阮丁远(网名:天下程序)
' Copyright 新动软网站管理系统 版权所有
'**************************************************************


%>




<%


Server.ScriptTimeout=999999


session.timeout=600


%>

<!--#include file=../../../inc/config.asp-->

<!--#include file=../../../inc/new_md5.asp-->
<!--#include file=../../../inc/functionFiless.asp-->
<!--#include file=clsCachea.asp-->
<!--#include file=../../../inc/ND_moban_page_type.asp-->
<%

'设置同页面文件名时的生成htm时搜索链接的深度,如aaa.asp?page=1,aaa.asp?page=1中又有aaa.asp?page=2,aaa.asp?page=2中又有aaa.asp?page=3,这样的搜索的搜索时的深度,0则不下一层,-123则不限制深度
tong_pagename_shendu=99999
tong_pagename_shendu=-123



'设置不同页面文件名时的生成htm时搜索链接的深度,如aaa.asp,aaa.asp中又有bbb.asp,bbb.asp中又有ccc.asp,这样的搜索的搜索时的深度,0则不下一层,-123则不限制深度
butong_pagename_shendu=99999
butong_pagename_shendu=-123




'是否智能分析带http://的链接的域名是否指向本站,如bbs.aaa.com也是ww.aaa.com的,故为其生成htm页
nd_zhineng_fenxi_httplink=1

'是否智能分析a href字符是否包含在某个js 的script 里,如果这样则不为此a href链接生成htm页
nd_zhineng_fenxi_hreflink_if_in_script=1

'是否搜索非本站内部链接的其他站的链接并为其对应的页生成htm页(如果是其他站的htm页则拷此htm页到本地)
nd_is_htmled_qita_zhan_x=0



'搜索非本站内部链接的其他站的链接并为其对应的页生成htm页时(如果是其他站的htm页则拷此htm页到本地),设置同页面文件名时的生成htm时搜索链接的深度,如aaa.asp?page=1,aaa.asp?page=1中又有aaa.asp?page=2,aaa.asp?page=2中又有aaa.asp?page=3,这样的搜索的搜索时的深度,0则不下一层,-123则不限制深度
nd_qitawww_tong_pagename_shendu=99999
nd_qitawww_tong_pagename_shendu=-123



'搜索非本站内部链接的其他站的链接并为其对应的页生成htm页时(如果是其他站的htm页则拷此htm页到本地),设置不同页面文件名时的生成htm时搜索链接的深度,如aaa.asp,aaa.asp中又有bbb.asp,bbb.asp中又有ccc.asp,这样的搜索的搜索时的深度,0则不下一层,-123则不限制深度
nd_qitawww_butong_pagename_shendu=99999
nd_qitawww_butong_pagename_shendu=-123


'如果为某个asp页类链接生成其对应的htm页时,读取此asp页出错,如404错误,500错误,是否不替换这个asp页类链接为 生成的htm页链接,并不生成其htm页,如可能是其他站的/x/xx.asp页,或其他站的xx/1.jpg,则无必要生成并且无必要替换链接
nd_noreplced_url_when_falied_xmlhttp=1



'是否拷贝非asp类文件到whtml生成目录
nd_is_kao_feiasp_x=1

'是否拷贝全部asp类文件的副本到whtml生成目录,以便供可能存在的nd_reg.asp,nd_chk_... .asp,save.asp之类的处理页 用
nd_is_kao_copedasp_x=1






'*********************************
'debug_on="off"

'1
 debug_on="off"
'2
 debug_needdownfiles="off"

'*********************************



'if ver finnally :
 'on error resume next






'拷站保存目录,勿改,否则链接全部会 404找不到
ttahtml="tthtml"

dim towhere_folderxxa

if session(nd_admin_cach_varb_name)="" then
if request.cookies(nd_admin_cach_varb_name)="" then
uuuaa=""
else
uuuaa=request.cookies(nd_admin_cach_varb_name)
end if
else
uuuaa=session(nd_admin_cach_varb_name)
end if
if session(nd_admin_cach_varb_name&"_pwd")="" then
if request.cookies(nd_admin_cach_varb_name&"_pwd")="" then
uuuaapwd=""
else
uuuaapwd=request.cookies(nd_admin_cach_varb_name&"_pwd")
end if
else
uuuaapwd=session(nd_admin_cach_varb_name&"_pwd")
end if


  '防止生成htm的时间过久而登陆超时:
  '防止生成htm的时间过久而登陆超时:
    response.cookies(nd_admin_cach_varb_name)=uuuaa
    Response.Cookies(nd_admin_cach_varb_name).Expires=DateAdd("n",35,now())

       response.cookies(nd_admin_cach_varb_name&"_pwd")=uuuaapwd
    Response.Cookies(nd_admin_cach_varb_name&"_pwd").Expires=DateAdd("n",35,now())
	
	session(nd_admin_cach_varb_name)=""
	session(nd_admin_cach_varb_name)=uuuaa
	session(nd_admin_cach_varb_name&"_pwd")=""	
	session(nd_admin_cach_varb_name&"_pwd")=uuuaapwd



dim now_web_www

dim htm_ext_ming
htm_ext_ming=""

encodeingxxx="gb2312"

nd_http_200ed_ok=0
dim nddd_is_qiye

encodeingxxxhh="gb2312"

encodeingxxx_in_http_header="gb2312"


dim now_pos_in_asp

now_pos_in_asp=1

dim loaded_file_types

dim glbal_nd_x_pindao_id,glbal_nd_x_zhuanti_id,glbal_nd_x_class_id,glbal_nd_x_view_id

dim ndx_cid_var_namex,ndx_pindao_id_var_namex,ndx_zid_var_namex,ndx_viewid_var_namex
dim nd_pindao_idx,nd_zhuanti_idx,nd_cidx,nd_view_idx

ndx_cid_var_namex=""
ndx_pindao_id_var_namex=""
ndx_zid_var_namex=""
ndx_viewid_var_namex=""



Function CheckTheChar(TheChar,TheString) 
'TheChar="要检测的字符串" 
'TheString="待检测的字符串" 
if inStr(TheString,TheChar) then 
for n =1 to Len(TheString) 
if Mid(TheString,n,Len(TheChar))=TheChar then 
CheckTheChar=CheckTheChar+1 
End if 
Next 
CheckTheChar=CheckTheChar
else 
CheckTheChar=0 
end if 
End Function




'==================================================
'函数名:GetBody
'作  用:截取字符串
'参  数:ConStr ------将要截取的字符串
'参  数:StartStr ------开始字符串
'参  数:OverStr ------结束字符串
'参  数:IncluL ------是否包含StartStr
'参  数:IncluR ------是否包含OverStr
'==================================================
Function GetBody(ConStr,StartStr,OverStr,IncluL,IncluR)
   If ConStr="$False$" or ConStr="" or IsNull(ConStr)=True Or StartStr="" or IsNull(StartStr)=True Or OverStr="" or IsNull(OverStr)=True Then
      GetBody="$False$"
      Exit Function
   End If
   Dim ConStrTemp
   Dim Start,Over
   ConStrTemp=Lcase(ConStr)
   StartStr=Lcase(StartStr)
   OverStr=Lcase(OverStr)
   Start = InStrB(1, ConStrTemp, StartStr, vbBinaryCompare)
   If Start<=0 then
      GetBody="$False$"
      Exit Function
   Else
      If IncluL=False Then
         Start=Start+LenB(StartStr)
      End If
   End If
   Over=InStrB(Start,ConStrTemp,OverStr,vbBinaryCompare)
   If Over<=0 Or Over<=Start then
      GetBody="$False$"
      Exit Function
   Else
      If IncluR=True Then
         Over=Over+LenB(OverStr)
      End If
   End If
   GetBody=MidB(ConStr,Start,Over-Start)
End Function






'==================================================
'过程名:Filters
'作  用:过滤
'==================================================
function Filters_dddxx(Content)


   Filters_dddxx=Content



'===================a8a
call openconnhtm() 
set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_stutas",connhtm,1,1
ItemID=rshtm("nd_x_now_xinm_id")
rshtm.close
set rshtm=nothing
call closeconnhtm() 
'==================a8a






   '过滤信息
   SqlItem ="select * from [ND_kz_Filters] where Flag=True and (ItemID="&ItemID&" or PublicTf=true)"
   Set RsItem=Server.CreateObject("adodb.recordset")
   RsItem.Open SqlItem,conn,1,1
   If Not RsItem.Eof Then
      Arr_Filters=RsItem.GetRows()
   End If
   RsItem.Close
   Set Rsitem=Nothing

conter_nnngl=0
now_ggla=""

If IsNull(Arr_Filters)=True or IsArray(Arr_Filters)=False Then
   Exit function
End if

   For Filteri=0 to Ubound(Arr_Filters,2)
      FilterStr2=""
      If Arr_Filters(1,Filteri)=clng(ItemID) Or Arr_Filters(10,Filteri)=True Then
	  
	  
	       If Arr_Filters(3,Filteri)=2 or Arr_Filters(3,Filteri)=1 Then'正文过滤
		   
		   
            If Arr_Filters(4,Filteri)=1 Then
               Content=Replace(Content,Arr_Filters(5,Filteri),Arr_Filters(8,Filteri))
            ElseIf Arr_Filters(4,Filteri)=2 Then
               FilterStr2=GetBody(Content,Arr_Filters(6,Filteri),Arr_Filters(7,Filteri),True,True)
               Do While FilterStr2<>"$False$"
			   
			   
			   
			   if cstr(Arr_Filters(8,Filteri))<>now_ggla then
			   conter_nnngl=0
			   
			   now_ggla=cstr(Arr_Filters(8,Filteri))
			   
			   end if
			   
			   conter_nnngl=conter_nnngl+1
			   
			   if conter_nnngl>999 then exit do
			 
			   
                  Content=Replace(Content,FilterStr2,Arr_Filters(8,Filteri))
                  FilterStr2=GetBody(Content,Arr_Filters(6,Filteri),Arr_Filters(7,Filteri),True,True)
               Loop
            End If
         End If
      End If
   Next
   
   
   Filters_dddxx=Content
   
End function







function load_htm_ext_ming(is_qiye)
biao2="[ND_sys]"
if is_qiye=1 then


set rs22d=server.CreateObject("adodb.recordset")
rs22d.open "select top 1 * from "&biao2&" where type='webname_settings_qiye'",conn,1,1
else


set rs22d=server.CreateObject("adodb.recordset")
rs22d.open "select top 1 * from "&biao2&" where type='webname_settings'",conn,1,1

end if
ddd1d=rs22d("data")
rs22d.close
set rs22d=nothing


dddd12d=split(ddd1d,"|")

hhhta=cstr(dddd12d(4))
hhhtax=cstr(dddd12d(5))
htm_ext_ming=mid(hhhtax,2,len(hhhtax))



End Function










Function set_id_var_names(cid_var_namex,pindao_id_var_namex,zid_var_namex,viewid_var_namex)
ndx_cid_var_namex=""
ndx_pindao_id_var_namex=""
ndx_zid_var_namex=""
ndx_viewid_var_namex=""

ndx_cid_var_namex=cid_var_namex
if ndx_cid_var_namex="" then ndx_cid_var_namex="cid"

ndx_pindao_id_var_namex=pindao_id_var_namex
if ndx_pindao_id_var_namex="" then ndx_pindao_id_var_namex="id"

ndx_zid_var_namex=zid_var_namex
if ndx_zid_var_namex="" then ndx_zid_var_namex="zid"


ndx_viewid_var_namex=viewid_var_namex
if ndx_viewid_var_namex="" then ndx_viewid_var_namex=""  'arid ,cpid


End Function



Function guolv_files_like_goto_down_file(aspfilepath,is_qiye) 

guolv_files_like_goto_down_file=0



end function





Function GetBodyx(weburl) 

GetBodyx=GetBodyb(weburl)

End Function


bianma_reg="\<meta.+\s{0,}charset\s{0,}=\s{0,}([^\""|\s|\>|\/]*)\s{0,}[\""']?\s{0,}.+\/{0,1}\>"

title_reg="\<title\>(.*)\<\/title\>"




Function GetCode(str,regstr)
Dim Reg,serStr
set Reg= new RegExp
Reg.IgnoreCase = True
Reg.MultiLine = True
Reg.Pattern =regstr
if Reg.test(str) then '若查询到匹配项
   Set Cols = Reg.Execute(str)
   serStr=trim(Cols(0).SubMatches(0)) '使用匹配到的第一个匹配项
else '否则给个默认值gb2312,有点省懒法,如果页面没给出编码格式,想知道确实有点麻烦
   serStr=encodeingxxx_in_http_header
end if
GetCode=serStr

if cstr(request("bianma"))="0" then
exit function
end if
if cstr(request("bianma"))="1" then
GetCode="gb2312"
end if

if cstr(request("bianma"))="2" then
GetCode="utf-8"
end if


end function






Function GetBodyb(weburl) 
GetBodyb="生成此页的html页时超时,无法获得内容"
'创建对象
'Dim ObjXMLHTTP

on error resume next


xdatss_31=weburl
xdatss_31=replace(xdatss_31,"\","/")
if instr(1,xdatss_31,"/",1)<>0 then
xdatss_31=mid(xdatss_31,instrrev(xdatss_31,"/")+1,len(xdatss_31)-(instrrev(xdatss_31,"/")+1)+1)
end if
if instr(1,xdatss_31,"?",1)<>0 then
xsfilename=left(xdatss_31,instr(1,xdatss_31,"?",1)-1)
else
xsfilename=xdatss_31
end if

if cstr(request("tiao_rar"))="1" and (lcase(right(xsfilename,4))=".jpg" or lcase(right(xsfilename,4))=".gif" or lcase(right(xsfilename,4))=".png" or lcase(right(xsfilename,4))=".bmp" or lcase(right(xsfilename,4))=".rar" or lcase(right(xsfilename,4))=".zip" or lcase(right(xsfilename,4))=".exe" or lcase(right(xsfilename,4))=".pdf" or lcase(right(xsfilename,4))=".asf" or lcase(right(xsfilename,4))=".avi" or lcase(right(xsfilename,4))=".doc" or lcase(right(xsfilename,5))=".jpeg" or lcase(right(xsfilename,4))=".mp3" or lcase(right(xsfilename,5))=".mpeg" or lcase(right(xsfilename,4))=".mpg" or lcase(right(xsfilename,5))=".rmvb" or lcase(right(xsfilename,3))=".rm" or lcase(right(xsfilename,4))=".swf" or lcase(right(xsfilename,4))=".wma" or lcase(right(xsfilename,4))=".wmv") then


GetBodyb="非网页数据"
exit function


end if





'----------end v2 code



Set ObjXMLHTTP=Server.CreateObject("MSXML2.serverXMLHTTP")


                                      '不用再改
ObjXMLHTTP.setTimeouts 50000, 60000, 60000, 45000


'请求文件,以异步形式
ObjXMLHTTP.Open "GET",weburl,False
ObjXMLHTTP.send
'While ObjXMLHTTP.readyState <> 4
'ObjXMLHTTP.waitForResponse 20000
'Wend
'得到结果

nd_http_200ed_ok=1

if err.number<>0 then
err.clear
GetBodyb="xmlhttp超时,无法获得内容"


exit function
end if



if instr(1,lcase(ObjXMLHTTP.getResponseHeader("Content-Type")),"text/html",1)=0 then

GetBodyb="非网页数据"
exit function
end if



encodeingxxx_in_http_header="gb2312"

if instr(1,lcase(ObjXMLHTTP.getResponseHeader("Content-Type")),"utf-8",1)<>0 then

encodeingxxx_in_http_header="utf-8"
else

encodeingxxx_in_http_header="gb2312"
end if





if ObjXMLHTTP.status>300 then
nd_http_200ed_ok=0

end if

GetBodybx1=ObjXMLHTTP.responseBody
GetBodyax2 =ObjXMLHTTP.responseText


encodeingxxx=GetCode(GetBodyax2,bianma_reg)


GetBodyb=BytesToBstrc(GetBodybx1,encodeingxxx)

set re=nothing


'释放对象
Set ObjXMLHTTP=Nothing
End Function




Function BytesToBstrc(body,Cset)
'dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstrc = objstream.ReadText 
objstream.Close
set objstream = nothing

End Function


Function jieuqx(wstr,starta,overa)
Set xiaoqi = New Regexp'设置配置对象
xiaoqi.IgnoreCase = True'忽略大小写
xiaoqi.Global = True'设置为全文搜索
xiaoqi.Pattern = "”&starta&“.+?”&overa&“"'正则表达式 
Set Matches =xiaoqi.Execute(wstr)'开始执行配置
jieuqx=""
For Each Match in Matches
jieuqx=jieuqx&Match.Value '循环匹配
Next
set xiaoqi=nothing 
End Function






function SaveRemoteFilekz(s_RemoteFileUrl,s_LocalFileName)

on error resume next


		Dim GetRemoteData
		Dim bError
		bError = False
		SaveRemoteFilekz = False
		
		Dim Retrieval
		Set Retrieval = Server.CreateObject("Microsoft.XMLHTTP")
		With Retrieval
			'.setTimeouts 1000,1000,1000,1000
			.Open "GET", s_RemoteFileUrl, False, "", ""
			.setRequestHeader "Referer", s_RemoteFileUrl
			.send
			If .readyState <> 4 Then Exit Function
			If .Status > 300 Then Exit Function
			GetRemoteData = .responseBody
		End With
		Set Retrieval = Nothing
		If LenB(GetRemoteData) < 100 Then Exit Function
		Dim Ads
		Set Ads = Server.CreateObject("ADODB"+"."+"Stream") 
		With Ads
			.Type = 1
			.Open
			.Write GetRemoteData
			.SaveToFile Server.MapPath(s_LocalFileName), 2
			.Cancel
			.Close
		End With
		Set Ads = Nothing

		If Err.Number = 0 And bError = False Then
			SaveRemoteFilekz = True
		Else
			SaveRemoteFilekz = False
			Err.Clear
		End If



end function




'==================================================
'下载所有一键拷站拷来的页里要用的图片和css,js等
'==================================================
Function SaveRemoteFile_kz()





'if request("rst")="1" then


'===================a8
call openconnhtm() 
set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_stutas",connhtm,1,1
towhere_folderxxa=rshtm("aspcpu_kz_towhere_folderxxa")
rshtm.close
set rshtm=nothing
call closeconnhtm() 
'==================a8
   
   
'===================a8a
call openconnhtm() 
set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_stutas",connhtm,1,1
www_x_webxx=rshtm("aspcpu_kz_www_x_web")
rshtm.close
set rshtm=nothing
call closeconnhtm() 
'==================a8a
   
   



per_down_nums=2

now_runnn_nums_d=0
had_ended=0

savepha=ttahtml&"/"&towhere_folderxxa


is_hav_fileavv=1

do while is_hav_fileavv=1





'------------v1.2------------------
call nd_process_sleep(nd_sleep_x_times_kz_downpic)
'------------v1.2------------------





call openconnhtm()

set rshtm2=server.CreateObject("adodb.recordset")
rshtm2.open "select * from ND_htm_hrefs_cachec_piccss where is_htmed='0' order by id asc",connhtm,1,1
is_hav_fileavv=0
if not rshtm2.eof then
is_hav_fileavv=1
ssz_1=trim(lcase(rshtm2("asp_path")))
ssz_2=trim(lcase(rshtm2("htm_path")))
now_iddd_dwnf=rshtm2("id")
else
had_ended=1
exit do
end if
rshtm2.close
set rshtm2=nothing


call closeconnhtm()




now_runnn_nums_d=now_runnn_nums_d+1


if len(ssz_1)<7 or left(trim(lcase(ssz_1)),7)<>"http://" then
ssz_1=ssz_1

else
savepathff="../../"&savepha&ssz_2

'以下用于支持无限级目录
call createfile(savepathff,"1111",true)
call deletefile(savepathff)

toget_froma=ssz_1

call SaveRemoteFilekz(toget_froma,savepathff)


now_asp_ppppts=toget_froma
end if

if now_runnn_nums_d>=per_down_nums then
   exit do
end if


'=============a2
call openconnhtm() 
connhtm.execute("update ND_htm_hrefs_cachec_piccss set is_htmed='1' where id="&now_iddd_dwnf)
call closeconnhtm()
'=============a2



loop







'=============a3
call openconnhtm() 
set rshtm2=server.CreateObject("adodb.recordset")
rshtm2.open "select count(*) from ND_htm_hrefs_cachec_piccss where is_htmed='1'",connhtm,1,1
if not rshtm2.eof then 
now_a_posd=rshtm2(0)
end if
rshtm2.close
set rshtm2=nothing
set rshtm2=server.CreateObject("adodb.recordset")
rshtm2.open "select count(*) from ND_htm_hrefs_cachec_piccss",connhtm,1,1
if not rshtm2.eof then 
iposht_turea=rshtm2(0)
end if
rshtm2.close
set rshtm2=nothing

call closeconnhtm()
'=============a3





if debug_on="off" then

response.ContentType="text/xml"

response.write "<?xml   version=""1.0""   encoding=""gb2312""?>"

response.write "<aaaa>"
response.write "<affff><![CDATA["&cstr(had_ended)
response.write "]]></affff><affff2><![CDATA["&now_asp_ppppts&"]]></affff2><affff3><![CDATA["&"ok"&"]]></affff3><affff4><![CDATA["&cstr(iposht_turea)&"]]></affff4><affff5><![CDATA["&cstr(now_a_posd)&"]]></affff5></aaaa>"



end if




end function





'((http|https|ftp):(\/\/|\\\\)((\w)+[.]){1,}(net|com|cn|org|cc|tv|[0-9]{1,3})(((\/[\~]*|\\[\~]*)(\w)+)|[.](\w)+)*(((([?](\w)+){1}[=]*))*((\w)+){1}([\&](\w)+[\=](\w)+)*)*)

'我写的href_reg="<a[^>]+href=\s*[""|\']?\s*([^>""\']+((\.asp)|(\.asp\?(((\w*\=[^""\'\&]*\&)+(\w*\=[^""\'\&]*))|(\w*\=[^""\'\&]*)))))\s*[""|\']?\s*((\s+[^>]+>)|(>))([^(<\/a>)]+)<\/a>"




dim href_url_index,href_url_len
dim need_href_array
need_href_array=""


'****************************************8

'判断子域名是否属于根域名:
Function is_tong_root_www(wwwv)

'重要,可能下标越界,要加on error resume next
on error resume next

is_tong_root_www=0
s_wwwa=GetUrlpath()

if instr(1,wwwv,".",1)=0 then
exit function 
end if

'1.a.com,1.a.com.cn,aa.1.a.com.cn,1.a.cc,.org,.info,.net,.net.cn,.org.cn,.tv
'www.a.com,www.a.com.cn,www.aa.a.com.cn
if lcase(left(wwwv,7))="http://" then
wwwv=mid(wwwv,8,len(wwwv)-8+1)
end if
s_wwwa=mid(s_wwwa,8,len(s_wwwa)-8+1)

sss_w_1=split(s_wwwa,".")
sss_w_2=split(wwwv,".")

is_yiyang_root=0
yiyang_com=0
firstrun=1
ss_i2=ubound(sss_w_2)


for ss_i=ubound(sss_w_1) to 0 step -1

sss_w_1_1=trim(lcase(sss_w_1(ss_i)))


sss_w_1_2=trim(lcase(sss_w_2(ss_i2)))

ss_i2=ss_i2-1
if ss_i2<0 then exit for 


if sss_w_1_1<>sss_w_1_2 and yiyang_com=0 and firstrun=1 then
exit for 
end if

if sss_w_1_1<>sss_w_1_2 and yiyang_com=1 and firstrun=0 then
exit for 
end if

if sss_w_1_1<>sss_w_1_2 and (sss_w_1_1="cn" or sss_w_1_1="com"  or sss_w_1_1="org"  or sss_w_1_1="cc"   or sss_w_1_1="info" or sss_w_1_1="tv" or sss_w_1_1="name" or sss_w_1_1="me") then
yiyang_com=0
end if



if sss_w_1_1=sss_w_1_2 and (sss_w_1_1="cn" or sss_w_1_1="com"  or sss_w_1_1="org"  or sss_w_1_1="cc"   or sss_w_1_1="info"  or sss_w_1_1="tv" or sss_w_1_1="name" or sss_w_1_1="me") then

if firstrun=1 then
firstrun=0
yiyang_com=1
end if

end if



if sss_w_1_1=sss_w_1_2 and yiyang_com=1 and sss_w_1_1<>"cn" and sss_w_1_1<>"com"  and sss_w_1_1<>"org"  and sss_w_1_1<>"cc"   and sss_w_1_1<>"info" and sss_w_1_1<>"tv"  and sss_w_1_1<>"name"  and sss_w_1_1<>"me" then
is_yiyang_root=1
exit for 
end if

next


is_tong_root_www=is_yiyang_root

end Function 

'****************************************8



Function get_need_htmled_hrefArray_from_a_page_x_cid(Cont,cid_var_name,pindao_id_var_name,cid,aspfilenma,pindao_id,dothtm_or_html,is_qiye)

href_reg="<a[^>]+href\s*=\s*[""|\']?\s*([^>""\']+)\s*[""|\']?\s*((\s+[^>]+>)|(>))"

href_reg2="(<a[^>]+href\s*=\s*[""|\']?\s*)([^>""\']+)(\s*[""|\']?\s*((\s+[^>]+>)|(>)))"


href_reg3="([^\.]*)(\.asp)(.*)"

href_reg4="^[^\\\/\:\*\?'\<\>\(\)\|\&]+\.[^\.\\\/\:\*\?'\<\>\(\)\|\&]+$"

lujin_reg="^[^\:\*\?\#\|\""\<\>\']+$"


towhere_folder=towhere_folderxxa

contbkkkk=Cont

have_asp=1

now_pos_in_asp=1
need_href_array=""


count_rrunn=1



do while (have_asp=1 or have_plusb=1)



'------------v1.2------------------
call nd_process_sleep(nd_sleep_x_times_kz_gethref)
'------------v1.2------------------





count_rrunn=count_rrunn+1

have_asp=0
have_plusb=0

Set regEx = New RegExp '建立正则表达式。
regEx.Pattern = href_reg '设置模式。 
regEx.IgnoreCase = True '设置是否区分字符大小写。
 
'regEx.Global = True '设置全局可用性。
regEx.Global = true 


lennnaa=len(Cont)
if now_pos_in_asp>lennnaa then exit do

contb=mid(Cont,now_pos_in_asp,lennnaa-now_pos_in_asp+1)
contbbofore=""
if now_pos_in_asp<>1 then
contbbofore=mid(Cont,1,now_pos_in_asp-1)
end if

lencontb=len(contb)


Set Matches = regEx.Execute(contb) '执行搜索。 
For Each Match in Matches '遍历匹配集合。 
'Match.FirstIndex
'Match.Value
'Match.Length
'=Match.SubMatches(0)
href_url=Match.Value
href_url_index=Match.FirstIndex
href_url_len=Match.Length
href_url_link=Match.SubMatches(0)
'response.write mid(Cont,href_url_index+1,href_url_len)&"<hr>"


href_url_index=href_url_index+1
have_asp_other=0

href_url_linkjh=href_url_link


href_url_linkddd=href_url_link

href_url_linktb=href_url_link
href_url_link=trim(replace(href_url_link,"\","/"))

aspfnmaaa=""
aspfnmaaa_quan=""

if instr(1,href_url_link,"/",1)<>0 then

if lcase(left(href_url_link,7))="http://" then
href_url_link2=mid(href_url_link,8,len(href_url_link)-8+1)
end if

if inStrRev(href_url_link,"/")=len(href_url_link) then
ccachea=""
else
ccachea=mid(href_url_link,inStrRev(href_url_link,"/")+1,len(href_url_link)-(inStrRev(href_url_link,"/")+1)+1)
aspfnmaaa_quan=ccachea
end if


else
ccachea=href_url_link
aspfnmaaa_quan=ccachea
end if


ccachea=trim(ccachea)


if instr(1,ccachea,"?",1)<>0  then
if left(ccachea,1)="?" then
fnmaaa=""
else
fnmaaa=left(ccachea,instr(1,ccachea,"?",1)-1)
end if

Set regEx4 = New RegExp '建立正则表达式。
regEx4.Pattern = href_reg4 '设置模式。 
regEx4.IgnoreCase = True '设置是否区分字符大小写。
 
'regEx.Global = True '设置全局可用性。
regEx4.Global = true 







if regEx4.test(fnmaaa)=true or fnmaaa="" then

have_asp_other=1
aspfnmaaa=fnmaaa

end if

set regEx4=nothing


end if


if instr(1,ccachea,"?",1)=0  then




Set regEx4 = New RegExp '建立正则表达式。
regEx4.Pattern = href_reg4 '设置模式。 
regEx4.IgnoreCase = True '设置是否区分字符大小写。
 
'regEx.Global = True '设置全局可用性。
regEx4.Global = true 


if regEx4.test(ccachea)=true or ccachea="" then




have_asp_other=1
aspfnmaaa=ccachea

end if



end if



'得到href链接最后的asp文件名
aspfnmaaa=lcase(trim(aspfnmaaa))


'aspfilenma可以带目录前缀
aspfilenmazz=aspfilenma
aspfilenmaww=aspfilenma
aspfilenmaffx=aspfilenma
aspfilenmaww=trim(replace(aspfilenmaww,"\","/"))
if instr(1,aspfilenmaww,"/",1)<>0 then
aspfilenmaww=mid(aspfilenmaww,instrrev(aspfilenmaww,"/")+1,len(aspfilenmaww)-(instrrev(aspfilenmaww,"/")+1)+1)
end if

aspfilenmaww=lcase(trim(aspfilenmaww))


if instr(1,aspfilenmaww,"?",1)<>0 then
aspfilenmaww=left(aspfilenmaww,instr(1,aspfilenmaww,"?",1)-1)
end if


if aspfnmaaa=aspfilenmaww then
have_asp=1
else
have_asp=0
end if

'****************************10
fin_posaa22=-123

for iiaappss22=8 to len(aspfilenmaffx)
if mid(aspfilenmaffx,iiaappss22,1)="/" then
fin_posaa22=iiaappss22
exit for 
end if
next


if fin_posaa22<>-123 then
if fin_posaa22+1>len(aspfilenmaffx) then
aspfilenmazzvv=""
else
aspfilenmazzvv=mid(aspfilenmaffx,fin_posaa22+1,len(aspfilenmaffx)-(fin_posaa22+1)+1)
end if
end if

if is_qiye=1 then
weburla="../../"&aspfilenmazzvv
nd_weboutpppt=nd_web_output_folder_qiye
else 
weburla="../../"&aspfilenmazzvv
nd_weboutpppt=nd_web_output_folder
end if
'****************************10



aspfilenmazza=aspfilenmazz
'提取asp文件名前的目录路径到sfilenameab变量
aspfilenmazza=replace(aspfilenmazza,"\","/")
if instr(1,aspfilenmazza,"/",1)<>0 then
aspfilenmazza=left(aspfilenmazza,instrrev(aspfilenmazza,"/"))
else
aspfilenmazza=""
end if


weburlqq=RelativePath2RootPathv(weburla) '如/xasp/1.asp



'***************************************9
'下面这行勿删,下面有用着
weburlaa=aspfilenmaffx '如http://127.0.0.1:81/xasp/1.asp
'***************************************9


weburlaas=weburlaa

weburlqq=trim(lcase(left(weburlqq,instrrev(weburlqq,"/"))))

aspalujin=""




'************************2
http_urla=""
'***********************2







'-----1-----
'如果是http://路径时,比较是否同一文件
if  lcase(left(lcase(trim(href_url_linkddd)),7))="http://" then
fin_posaa=-123

for iiaappss=8 to len(trim(href_url_linkddd))
if mid(trim(href_url_linkddd),iiaappss,1)="/" then
fin_posaa=iiaappss
exit for 
end if
next


if have_asp_other=1 and fin_posaa<>-123 then
href_url_link22=mid(trim(href_url_linkddd),fin_posaa,len(trim(href_url_linkddd))-fin_posaa+1)
aspalujin22=trim(lcase(left(href_url_link22,instrrev(href_url_link22,"/"))))


'if instr(1,aspalujin22,"/"&nd_weboutpppt&"/",1)=0 then
'have_asp_other=0
'end if

end if





if fin_posaa<>-123 then




http_urla=lcase(mid(trim(href_url_linkddd),1,fin_posaa-1))



'以下替换勿改,下面有用着
'以下替换勿改,下面有用着
href_url_link=mid(href_url_link,fin_posaa,len(href_url_link)-fin_posaa+1)




aspalujin=trim(lcase(left(href_url_link,instrrev(href_url_link,"/"))))
if aspalujin=weburlqq then
have_asp=1
else
have_asp=0
end if

'http://路径前缀不相同的话则不为同一文件
'不在根目录下运行本系统时也要测试下本代码




'********************1********
if is_tong_root_www(http_urla)=0 then
have_asp=0
have_asp_other=0
end if
'********************1********




else




http_urla=trim(href_url_linkddd)
'********************1********
if is_tong_root_www(http_urla)=0 then
have_asp=0
have_asp_other=0
end if
'********************1********



end if


end if



'-----2-----
'如果是绝对路径时,比较是否同一文件
'注意:可能/1.asp与/11/1.asp
'不在根目录下运行本系统时也要测试下本代码
if  lcase(left(href_url_link,1))="/" then


aspalujin=trim(lcase(left(href_url_link,instrrev(href_url_link,"/"))))

if have_asp_other=1 then

'if instr(1,aspalujin,"/"&nd_weboutpppt&"/",1)=0 then
'have_asp_other=0
'end if


end if


if have_asp=1 then
if aspalujin=weburlqq then
have_asp=1
else
have_asp=0
end if
end if

end if


'-----3-----
'如果是相对路径时,肯定不是同一文件
'不在根目录下运行本系统时也要测试下本代码
if  lcase(left(href_url_link,3))="../" then
have_asp=0
end if


'------4-----
'   ../xasp/../xasp这样的呢?, /xasp/../xasp/../xasp这样的呢?  ...............




if aspalujin="" and instr(1,href_url_link,"/",1)<>0 then 
aspalujin=trim(lcase(left(href_url_link,instrrev(href_url_link,"/"))))

end if



if have_asp=1 then
have_asp_other=0
end if

have_plusb=0

href_url_linkt=lcase(trim(aspalujin&aspfnmaaa_quan))



'**********************************14
if (have_asp_other=1 or have_asp=1) and  guolv_files_like_goto_down_file(aspfnmaaa,is_qiye)=0 then
'**********************************14











'******************************************11



href_url_linkot=href_url_link
ConsultUrlxa=weburlaas



if http_urla<>"" then 
aaalinksss=href_url_linkddd
else
aaalinksss=lcase(trim(DefiniteUrlxxc(href_url_linkot,ConsultUrlxa)))
end if



nodoiiiiit=0


'call 频道内部链接文件轮询来强制加了可能的cid或pindao_id等的url参数 ()
'aaalinksss=get_qiangzhi_url_cang_main(aaalinksss,ndx_cid_var_namex,ndx_pindao_id_var_namex,ndx_zid_var_namex,ndx_viewid_var_namex,contbkkkk)



'防止/a/a.asp?i=11/
if instr(1,aaalinksss,"?",1)<>0 then
aaalinksss5=mid(aaalinksss,1,instr(1,aaalinksss,"?",1)-1)
else
aaalinksss5=aaalinksss
end if

aaalinksss_qian=mid(aaalinksss5,1,instrrev(aaalinksss5,"/")-1+1)

fin_posaa222=-123

for iiaappss222=8 to len(aaalinksss_qian)
if mid(aaalinksss_qian,iiaappss222,1)="/" then
fin_posaa222=iiaappss222
exit for 
end if
next


if fin_posaa222<>-123 then
if fin_posaa222=len(aaalinksss_qian) then
aaalinksss_qian="/"
else
aaalinksss_qian=mid(aaalinksss_qian,fin_posaa222,len(aaalinksss_qian)-(fin_posaa222)+1)
end if
end if




Set regEx5 = New RegExp '建立正则表达式。
regEx5.Pattern = lujin_reg '设置模式。 
regEx5.IgnoreCase = True '设置是否区分字符大小写。
 
'regEx.Global = True '设置全局可用性。
regEx5.Global = true 


if regEx5.test(aaalinksss_qian)<>true then
nodoiiiiit=1
end if

set regEx5=nothing

if left(trim(href_url_linkjh),1)="#" then
nodoiiiiit=1
end if



if nodoiiiiit=0 then

href_url_linksss=aaalinksss
href_url_linktaaa=aaalinksss

href_url_linksss=get_md5_htm_filename_by_aspfilename(href_url_linksss,contbkkkk,dothtm_or_html,1,aspfilenmazza)

if lcase(trim(aspfnmaaa))="index.asp" or lcase(trim(aspfnmaaa))="default.asp" then
href_url_linksss="index."&dothtm_or_html
end if

href_url_linksssaa=href_url_linksss


href_url_linksssaakk=aaalinksss_qian&href_url_linksss

'加上前缀绝对路径
href_url_linksss="/"&ttahtml&"/"&towhere_folder&aaalinksss_qian&href_url_linksss


'******************************************11


before_urla=""
if href_url_index-1<>0 then
before_urla=mid(contb,1,href_url_index-1)
end if

after_urla=""
if href_url_index+href_url_len<=lencontb then
after_urla=mid(contb,href_url_index+href_url_len,lencontb-(href_url_index+href_url_len)+1)
end if



'去掉$1,$3的干扰
href_url_linksss=replace(href_url_linksss,"$1","#121#1#21#aspcpu")
href_url_linksss=replace(href_url_linksss,"$3","#121#3#21#aspcpu")


Set regEx2 = New RegExp '建立正则表达式。 
regEx2.Pattern = href_reg2 '设置模式。 
regEx2.IgnoreCase = True '设置是否区分字符大小写。
regEx2.Global = true 
href_url_linkssszz=regEx2.Replace(href_url,"$1"&href_url_linksss&"$3") '执行
set regEx2=nothing
 
href_url_linkssszz=replace(href_url_linkssszz,"#121#1#21#aspcpu","$1")
href_url_linkssszz=replace(href_url_linkssszz,"#121#3#21#aspcpu","$3")

Cont=contbbofore&before_urla&href_url_linkssszz&after_urla



now_pos_in_asp=href_url_index+len(href_url_linkssszz)+len(contbbofore)



need_href_array=need_href_array&"other_asp"&"$x$1$,$1$x$"&aspfilenma&"$x$1$,$1$x$"&href_url_linktaaa&"$x$1$,$1$x$"&href_url_linksssaakk&"$$need_htmed_aspcpu121$$"



have_plusb=1
exit for
else

if guolv_files_like_goto_down_file(aspfnmaaa,is_qiye)=0 then
now_pos_in_asp=href_url_index+href_url_len+len(contbbofore)
end if

end if


end if 


'**************************************12

'***************************************12


'-------end q--







now_pos_in_asp=href_url_index+href_url_len+len(contbbofore)


Next 


set regEx=nothing


loop



if need_href_array<>"" and len(need_href_array)>22 then
need_href_array=left(need_href_array,len(need_href_array)-len("$$need_htmed_aspcpu121$$"))
end if


Cont=get_need_down_files(Cont,aspfilenmaffx)

get_need_htmled_hrefArray_from_a_page_x_cid=Cont

End Function












dim need_href_arrayff


Function get_need_down_files(Cont,aspfilenma)

towhere_folder=towhere_folderxxa

href_reg="<(img|link|script|td|tr|table|embed|param)[^>]+(href|src|background|value)\s*=\s*[""|\']?\s*([^>""\']+)\s*[""|\']?\s*((\s+[^>]+\/{0,1}>)|(>)|(\/>))"

href_reg2="(<(?:img|link|script|td|tr|table|embed|param)[^>]+(?:href|src|background|value)\s*=\s*[""|\']?\s*)([^>""\']+)(\s*[""|\']?\s*((\s+[^>]+\/{0,1}>)|(>)|(\/>)))"


href_reg3="([^\.]*)(\.asp)(.*)"

href_reg4="^[^\\/\:\*\?'<>\(\)\|\&]+((\.bmp)|(\.jpg)|(\.jpeg)|(\.gif)|(\.png)|(\.js)|(\.css)|(\.psd)|(\.svg)|(\.dxf)|(\.wmf)|(\.tiff)|(\.swf))$" '不要下.avi,.mp3之类,太大了



contbkkkk=Cont

have_asp=1
haved_aaaadd=0
now_pos_in_asp=1



count_rrunn=1



do while (have_asp=1 or have_plusb=1)



'------------v1.2------------------
call nd_process_sleep(nd_sleep_x_times_kz_gethref_pic)
'------------v1.2------------------


count_rrunn=count_rrunn+1

have_asp=0
have_plusb=0

Set regEx = New RegExp '建立正则表达式。
regEx.Pattern = href_reg '设置模式。 
regEx.IgnoreCase = True '设置是否区分字符大小写。
 
'regEx.Global = True '设置全局可用性。
regEx.Global = true 


lennnaa=len(Cont)
if now_pos_in_asp>lennnaa then exit do

contb=mid(Cont,now_pos_in_asp,lennnaa-now_pos_in_asp+1)
contbbofore=""
if now_pos_in_asp<>1 then
contbbofore=mid(Cont,1,now_pos_in_asp-1)
end if

lencontb=len(contb)


Set Matches = regEx.Execute(contb) '执行搜索。 
For Each Match in Matches '遍历匹配集合。 
'Match.FirstIndex
'Match.Value
'Match.Length
'=Match.SubMatches(0)
href_url=Match.Value
href_url_index=Match.FirstIndex
href_url_len=Match.Length
href_url_link=Match.SubMatches(2)
'response.write mid(Cont,href_url_index+1,href_url_len)&"<hr>"


href_url_index=href_url_index+1
have_asp_other=0
href_url_linkdd=href_url_link





href_url_linktb=href_url_link
href_url_link=trim(replace(href_url_link,"\","/"))

aspfnmaaa=""
aspfnmaaa_quan=""

if instr(1,href_url_link,"/",1)<>0 then

if lcase(left(href_url_link,7))="http://" then
href_url_link2=mid(href_url_link,8,len(href_url_link)-8+1)
end if

if inStrRev(href_url_link,"/")=len(href_url_link) then
ccachea=""
else
ccachea=mid(href_url_link,inStrRev(href_url_link,"/")+1,len(href_url_link)-(inStrRev(href_url_link,"/")+1)+1)
aspfnmaaa_quan=ccachea
end if


else
ccachea=href_url_link
aspfnmaaa_quan=ccachea
end if


ccachea=trim(ccachea)


if instr(1,ccachea,"?",1)<>0  then
if left(ccachea,1)="?" then
fnmaaa=""
else
fnmaaa=left(ccachea,instr(1,ccachea,"?",1)-1)
end if

Set regEx4 = New RegExp '建立正则表达式。
regEx4.Pattern = href_reg4 '设置模式。 
regEx4.IgnoreCase = True '设置是否区分字符大小写。
 
'regEx.Global = True '设置全局可用性。
regEx4.Global = true 







if regEx4.test(fnmaaa)=true or fnmaaa="" then


ext_n=""
if instr(1,fnmaaa,".",1)<>0 then
ext_n=mid(fnmaaa,instrrev(fnmaaa,".")+1,len(fnmaaa)-(instrrev(fnmaaa,".")+1)+1)
end if


have_asp_other=1
aspfnmaaa=fnmaaa

end if

set regEx4=nothing


end if


if instr(1,ccachea,"?",1)=0  then




Set regEx4 = New RegExp '建立正则表达式。
regEx4.Pattern = href_reg4 '设置模式。 
regEx4.IgnoreCase = True '设置是否区分字符大小写。
 
'regEx.Global = True '设置全局可用性。
regEx4.Global = true 


if regEx4.test(ccachea)=true then



ext_n=""
if instr(1,ccachea,".",1)<>0 then
ext_n=mid(ccachea,instrrev(ccachea,".")+1,len(ccachea)-(instrrev(ccachea,".")+1)+1)
end if




have_asp_other=1
aspfnmaaa=ccachea

end if



end if



'得到href链接最后的asp文件名
aspfnmaaa=lcase(trim(aspfnmaaa))


'aspfilenma可以带目录前缀
aspfilenmazz=aspfilenma
aspfilenmaww=aspfilenma
aspfilenmaffx=aspfilenma
aspfilenmaww=trim(replace(aspfilenmaww,"\","/"))
if instr(1,aspfilenmaww,"/",1)<>0 then
aspfilenmaww=mid(aspfilenmaww,instrrev(aspfilenmaww,"/")+1,len(aspfilenmaww)-(instrrev(aspfilenmaww,"/")+1)+1)
end if

aspfilenmaww=lcase(trim(aspfilenmaww))


if instr(1,aspfilenmaww,"?",1)<>0 then
aspfilenmaww=left(aspfilenmaww,instr(1,aspfilenmaww,"?",1)-1)
end if


if aspfnmaaa=aspfilenmaww then
have_asp=1
else
have_asp=0
end if






'****************************10
fin_posaa22=-123

for iiaappss22=8 to len(aspfilenmaffx)
if mid(aspfilenmaffx,iiaappss22,1)="/" then
fin_posaa22=iiaappss22
exit for 
end if
next


if fin_posaa22<>-123 then
if fin_posaa22+1>len(aspfilenmaffx) then
aspfilenmazzvv=""
else
aspfilenmazzvv=mid(aspfilenmaffx,fin_posaa22+1,len(aspfilenmaffx)-(fin_posaa22+1)+1)
end if
end if

if is_qiye=1 then
weburla="../../"&aspfilenmazzvv
nd_weboutpppt=nd_web_output_folder_qiye
else 
weburla="../../"&aspfilenmazzvv
nd_weboutpppt=nd_web_output_folder
end if
'****************************10





aspfilenmazza=aspfilenmazz
'提取asp文件名前的目录路径到sfilenameab变量
aspfilenmazza=replace(aspfilenmazza,"\","/")
if instr(1,aspfilenmazza,"/",1)<>0 then
aspfilenmazza=left(aspfilenmazza,instrrev(aspfilenmazza,"/"))
else
aspfilenmazza=""
end if


weburlqq=RelativePath2RootPathv(weburla) '如/xasp/1.asp



weburlqq=trim(lcase(left(weburlqq,instrrev(weburlqq,"/"))))

aspalujin=""

'*********************************18
http_urla=""
'*********************************18


'-----1-----
'如果是http://路径时,比较是否同一文件
if  lcase(left(lcase(trim(href_url_linkdd)),7))="http://" then
fin_posaa=-123

for iiaappss=8 to len(trim(href_url_linkdd))
if mid(trim(href_url_linkdd),iiaappss,1)="/" then
fin_posaa=iiaappss
exit for 
end if
next


if have_asp_other=1 and fin_posaa<>-123 then
href_url_link22=mid(trim(href_url_linkdd),fin_posaa,len(trim(href_url_linkdd))-fin_posaa+1)
aspalujin22=trim(lcase(left(href_url_link22,instrrev(href_url_link22,"/"))))


'if instr(1,aspalujin22,"/"&nd_weboutpppt&"/",1)=0 then
'have_asp_other=0
'end if



end if

if have_asp_other=1 and fin_posaa=-123 then
have_asp_other=0
end if



if fin_posaa<>-123 then





http_urla=lcase(mid(trim(href_url_linkdd),1,fin_posaa-1))



'以下替换勿改,下面有用着
'以下替换勿改,下面有用着
href_url_link=mid(href_url_link,fin_posaa,len(href_url_link)-fin_posaa+1)




aspalujin=trim(lcase(left(href_url_link,instrrev(href_url_link,"/"))))
if aspalujin=weburlqq then
have_asp=1
else
have_asp=0
end if

'http://路径前缀不相同的话则不为同一文件
'不在根目录下运行本系统时也要测试下本代码


'**********************************************17
if is_tong_root_www(http_urla)=0 then
have_asp=0
have_asp_other=0
end if
'**********************************************17

else

http_urla=trim(href_url_linkdd)
'**********************************************17
if is_tong_root_www(http_urla)=0 then
have_asp=0
have_asp_other=0
end if
'**********************************************17




end if


end if



'-----2-----
'如果是绝对路径时,比较是否同一文件
'注意:可能/1.asp与/11/1.asp
'不在根目录下运行本系统时也要测试下本代码
if  lcase(left(href_url_link,1))="/" then


aspalujin=trim(lcase(left(href_url_link,instrrev(href_url_link,"/"))))

if have_asp_other=1 then

'if instr(1,aspalujin,"/"&nd_weboutpppt&"/",1)=0 then
'have_asp_other=0
'end if


end if


if have_asp=1 then
if aspalujin=weburlqq then
have_asp=1
else
have_asp=0
end if
end if

end if


'-----3-----
'如果是相对路径时,肯定不是同一文件
'不在根目录下运行本系统时也要测试下本代码
if  lcase(left(href_url_link,3))="../" then
have_asp=0
end if


'------4-----
'   ../xasp/../xasp这样的呢?, /xasp/../xasp/../xasp这样的呢?  ...............




if aspalujin="" and instr(1,href_url_link,"/",1)<>0 then 
aspalujin=trim(lcase(left(href_url_link,instrrev(href_url_link,"/"))))

end if



if have_asp=1 then
have_asp_other=0
end if

have_plusb=0

href_url_linkt=lcase(trim(aspalujin&aspfnmaaa_quan))





'have_asp_other=1表示是/xasp/或/xcomasp目录下的asp文件,但是此asp文件和aspfilenma的文件名值不是同名的
if have_asp_other=1 and  guolv_files_like_goto_down_file(aspfnmaaa,is_qiye)=0 then




href_url_linkot=href_url_link
ConsultUrlxa=aspfilenmaffx

if http_urla<>"" then

aaalinksss=href_url_linkdd
else


aaalinksss=lcase(trim(DefiniteUrlxxc(href_url_linkot,ConsultUrlxa)))
end if



nodoiiiiit=0


'防止/a/a.asp?i=11/
if instr(1,aaalinksss,"?",1)<>0 then
aaalinksss5=mid(aaalinksss,1,instr(1,aaalinksss,"?",1)-1)
else
aaalinksss5=aaalinksss
end if

aaalinksss_qian=mid(aaalinksss5,1,instrrev(aaalinksss5,"/")-1+1)

fin_posaa222=-123

for iiaappss222=8 to len(aaalinksss_qian)
if mid(aaalinksss_qian,iiaappss222,1)="/" then
fin_posaa222=iiaappss222
exit for 
end if
next


if fin_posaa222<>-123 then
if fin_posaa222=len(aaalinksss_qian) then
aaalinksss_qian="/"
else
aaalinksss_qian=mid(aaalinksss_qian,fin_posaa222,len(aaalinksss_qian)-(fin_posaa222)+1)
end if
end if






if nodoiiiiit=0 then

href_url_linksss=aaalinksss
href_url_linktaaa=aaalinksss

href_url_linksss=get_md5_htm_filename_by_aspfilename(href_url_linksss,contbkkkk,ext_n,1,aspfilenmazza)


href_url_linksssaa=href_url_linksss



href_url_linksssaaa2=aaalinksss_qian&href_url_linksss



'加上前缀绝对路径
href_url_linksss="/"&ttahtml&"/"&towhere_folder&aaalinksss_qian&href_url_linksss



before_urla=""
if href_url_index-1<>0 then
before_urla=mid(contb,1,href_url_index-1)
end if

after_urla=""
if href_url_index+href_url_len<=lencontb then
after_urla=mid(contb,href_url_index+href_url_len,lencontb-(href_url_index+href_url_len)+1)
end if



'去掉$1,$3的干扰
href_url_linksss=replace(href_url_linksss,"$1","#121#1#21#aspcpu")
href_url_linksss=replace(href_url_linksss,"$3","#121#3#21#aspcpu")


Set regEx2 = New RegExp '建立正则表达式。 
regEx2.Pattern = href_reg2 '设置模式。 
regEx2.IgnoreCase = True '设置是否区分字符大小写。
regEx2.Global = true 
href_url_linkssszz=regEx2.Replace(href_url,"$1"&href_url_linksss&"$3") '执行
set regEx2=nothing
 
href_url_linkssszz=replace(href_url_linkssszz,"#121#1#21#aspcpu","$1")
href_url_linkssszz=replace(href_url_linkssszz,"#121#3#21#aspcpu","$3")

Cont=contbbofore&before_urla&href_url_linkssszz&after_urla



now_pos_in_asp=href_url_index+len(href_url_linkssszz)+len(contbbofore)






call openconnhtm()
'排除重复的文件----------------------
is_haved_filea=0

set rshtm2=server.CreateObject("adodb.recordset")
rshtm2.open "select * from ND_htm_hrefs_cachec_piccss where ((htm_path='"&cstr(href_url_linksssaaa2)&"' and htm_path<>'') or (asp_path='"&cstr(href_url_linktaaa)&"' and asp_path<>''))",connhtm,1,1
if not rshtm2.eof then
is_haved_filea=1
end if
rshtm2.close
set rshtm2=nothing
'end 排除重复的文件


if is_haved_filea=0 then


set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_htm_hrefs_cachec_piccss",connhtm,1,3
rshtm.addnew

rshtm("other_or_self")="downfile"
rshtm("jichu_dizhi")=aspfilenma
rshtm("asp_path")=href_url_linktaaa
rshtm("htm_path")=href_url_linksssaaa2
rshtm("is_htmed")="0"

rshtm.update
rshtm.close
set rshtm=nothing

 
end if
call closeconnhtm()


'if is_haved_fileaa=0 then
'haved_aaaadd=1
'need_href_arrayff=need_href_arrayff&"downfile"&"$x$1$,$1$x$"&aspfilenma&"$x$1$,$1$x$"&href_url_linktaaa&"$x$1$,$1$x$"&href_url_linksssaaa2&"$$need_htmed_aspcpu121$$"
'end if


have_plusb=1

exit for
else

if guolv_files_like_goto_down_file(aspfnmaaa,is_qiye)=0 then
now_pos_in_asp=href_url_index+href_url_len+len(contbbofore)
end if

end if


end if 





now_pos_in_asp=href_url_index+href_url_len+len(contbbofore)


Next 


set regEx=nothing


loop




get_need_down_files=Cont


End Function




















Function get_all_samename_asp_url(Cont,cid_var_name,pindao_id_var_name,cid,aspfilenma,pindao_id,is_qiye)

href_reg="<a[^>]+href\s*=\s*[""|\']?\s*([^>""\']+)\s*[""|\']?\s*((\s+[^>]+>)|(>))"

href_reg2="(<a[^>]+href\s*=\s*[""|\']?\s*)([^>""\']+)(\s*[""|\']?\s*((\s+[^>]+>)|(>)))"


href_reg3="([^\.]*)(\.asp)(.*)"

contbkkkk=Cont




need_href_array=""

'..................


End Function










Function GetLocationURL() 
Dim Url 
Dim ServerPort,ServerName,ScriptName,QueryString 
ServerName = Request.ServerVariables("SERVER_NAME") 
ServerPort = Request.ServerVariables("SERVER_PORT") 
ScriptName = Request.ServerVariables("SCRIPT_NAME") 
QueryString = Request.ServerVariables("QUERY_STRING") 
Url="http://"&ServerName 
If ServerPort <> "80" Then Url = Url & ":" & ServerPort 


'Url=Url&ScriptName 
'If QueryString <>"" Then Url=Url&"?"& QueryString 


GetLocationURL=Url 
End Function



 Function GetUrlpath() 

'ScriptAddress = CStr(GetLocationURL()) '取得当前地址 

 
GetUrlpath = now_web_www 


End Function









	Function RelativePath2RootPathv(url)
		'Dim sTempUrl
		sTempUrl = url
		If Left(sTempUrl, 1) = "/" Then
			RelativePath2RootPathv = sTempUrl
			Exit Function
		End If

		'Dim m_strPath
		m_strPath = Request.ServerVariables("SCRIPT_NAME")
		m_strPath = Left(m_strPath, InStrRev(m_strPath, "/") - 1)
		Do While Left(sTempUrl, 3) = "../"
			sTempUrl = Mid(sTempUrl, 4)
			m_strPath = Left(m_strPath, InStrRev(m_strPath, "/") - 1)
		Loop
		RelativePath2RootPathv = m_strPath & "/" & sTempUrl
	End Function






	
		'==================================================
		'函数名:DefiniteUrlxxc
		'作  用:将相对地址转换为绝对地址
		'参  数:PrimitiveUrlStrx ------要转换的相对地址
		'参  数:ConsultUrlStrx ------当前网页地址
		'==================================================
		'Function DefiniteUrlxxc(ByVal PrimitiveUrlStrx, ByVal ConsultUrlStrx)
		
		                 '勿删
	                    Function DefiniteUrlxxc(PrimitiveUrlx, ConsultUrlx)
                                  DefiniteUrlxxc=DefiniteUrl(PrimitiveUrlx, ConsultUrlx)

                             End Function







Function CheckUrl(strUrl)
   Dim Re
   Set Re=new RegExp
   Re.IgnoreCase =true
   Re.Global=True
   Re.Pattern="http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?"
   If Re.test(strUrl)=True Then
      CheckUrl=strUrl
   Else
      CheckUrl="$False$"
   End If
   Set Rs=Nothing
End Function


Function ishaveobjc(ByVal strClassString)
	'Dim xTestObj,ClsString
	On Error Resume Next
	ishaveobjc = False
	ClsString = strClassString
	Err = 0
	Set xTestObj = Server.CreateObject(ClsString)
	If Err = 0 Then ishaveobjc = True
	If Err = -2147352567 Then ishaveobjc = True
	Set xTestObj = Nothing
	Err = 0
	Exit Function
End Function


Function CheckhtmDir(byval FolderPath)
	'dim fso
	Set fso = Server.CreateObject(fssoo_nd_var_str_x_customx)
	If fso.FolderExists(Server.MapPath(folderpath)) then
	'存在
		CheckhtmDir = True
	Else
	'不存在
		CheckhtmDir = False
	End if
	Set fso = nothing
End Function


Function MakehtmDir(byval foldername)
	'dim fso
	Set fso = Server.CreateObject(fssoo_nd_var_str_x_customx)
        fso.CreateFolder(Server.MapPath(foldername))
        If fso.FolderExists(Server.MapPath(foldername)) Then
           MakehtmDir = True
        Else
           MakehtmDir = False
        End If
	Set fso = nothing
End Function












Function CreatePathhh(fromPath)
	'Dim objFSO, uploadpath
	uploadpath = Year(Now) & "-" & Month(Now) '以年月创建上传文件夹,格式:2007-8
	uploadpath = Replace(uploadpath, ".", "_")
	On Error Resume Next
	Set objFSO =Server.CreateObject(fssoo_nd_var_str_x_customx)
	If objFSO.FolderExists(Server.MapPath(fromPath & uploadpath)) = False Then
		objFSO.CreateFolder Server.MapPath(fromPath & uploadpath)
	End If
	If Err.Number = 0 Then
		CreatePathhh = uploadpath & "/"
	Else
		CreatePathhh = ""
	End If
	Set objFSO = Nothing
End Function









'***********************************************
'函数名:JoinChara
'作  用:向地址中加入 ? 或 &
'参  数:strUrl  ----网址
'返回值:加了 ? 或 & 的网址
'***********************************************
function JoinChara(strUrl)
	if strUrl="" then
		JoinChara=""
		exit function
	end if
	if InStr(strUrl,"?")<len(strUrl) then 
		if InStr(strUrl,"?")>1 then
			if InStr(strUrl,"&")<len(strUrl) then 
				JoinChara=strUrl & "&"
			else
				JoinChara=strUrl
			end if
		else
			JoinChara=strUrl & "?"
		end if
	else
		JoinChara=strUrl
	end if
end function







set filea=new Cls_FSO
set fileb=new DosAsp 

dim haved,num_folders,flst(),ppath,sssd




dim CacheTemp


function copy_all_asp_and_img_files(is_qiye)
is_qiye=clng(is_qiye)


'重要:
nddd_is_qiye=is_qiye


'缓存路径
CacheTemp=Lcase(trim(request.ServerVariables("SCRIPT_NAME")))
CacheTemp=left(CacheTemp,instrrev(CacheTemp,"/"))
CacheTemp=replace(CacheTemp,"\","_")
CacheTemp=replace(CacheTemp,"/","_")
CacheTemp=nd_admin_cach_varb_name&"cacheclse"& CacheTemp


'ppath=request("ppath")

if is_qiye=1 then
ppath=nd_web_output_folder_qiye
else
ppath=nd_web_output_folder
end if

if ppath="" then 
sssd=""

else

sssd="/"
end if



if request("dfirst")="1" then

haved=0
call list_folder_s_files("root")
call zhangkai_all_folder()

Set myCache=new clsCache_b

   myCache.name=CacheTemp & "cop_arr"
   Call myCache.clean()
         myCache.add flst,Dateadd("h",999,now)
   


         myCache.name=CacheTemp & "cop_now_pos_a"
   Call myCache.clean()  
      myCache.add 0,Dateadd("h",999,now)
        
		
		 myCache.name=CacheTemp & "cop_havd"
   Call myCache.clean()  
      myCache.add haved,Dateadd("h",999,now)
		
		
set myCache=nothing
	


call do_copy_all_asp_and_img(is_qiye)




else



call do_copy_all_asp_and_img(is_qiye)
end if

end function 





function list_folder_s_files(iq)

if iq="root" then
npath=""
else
npath=flst(iq,0)

end if



ss3=filea.ShowFolderList(server.mappath("../../"&ppath&sssd&npath))

ss4=filea.ShowFileList(server.mappath("../../"&ppath&sssd&npath))



if ss3=-1 or ss3="" then

nofolder=1
numf1=0
else

ss3=left(ss3,len(ss3)-1)'去掉最后一个|号



'处理文件夹

fl1=split(ss3,"|")


numf1=ubound(fl1)+1


end if

if ss4=-1 or ss4="" then

nofiles=1

numf2=0

else
ss4=left(ss4,len(ss4)-1) '去掉最后一个|号



'处理文件

fl2=split(ss4,"|")



numf2=ubound(fl2)+1


end if







'response.write numf1+numf2

if haved=0 then

old_len=0
else


old_len=ubound(flst)+1






end if


if old_len+(numf1+numf2)>=1 then haved=1




redim cache_list(old_len,3)

for k=0 to old_len-1

cache_list(k,0)=flst(k,0)

cache_list(k,1)=flst(k,1)

cache_list(k,2)=flst(k,2)



next

redim flst(old_len+(numf1+numf2)-1,3)


for k=0 to old_len-1

flst(k,0)=cache_list(k,0)

flst(k,1)=cache_list(k,1)

flst(k,2)=cache_list(k,2)




next





for iw=old_len to (old_len+numf1-1)




ii=iw-old_len




sssf="/"
if npath="" then sssf=""



flst(iw,0)=npath&sssf&fl1(ii)



flst(iw,1)=0 '=0表示文件夹
flst(iw,2)=0 '=0表示文件夹未展开为文件,=1表示文件夹已展开为文件


next

for i=old_len+numf1 to old_len+numf1+numf2-1

ii=i-(old_len+numf1)


sssf="/"
if npath="" then sssf=""



flst(i,0)=npath&sssf&fl2(ii)


flst(i,1)=1 '=1表示文件
flst(i,2)=1 

next





'test----------------------------------
'response.write "<br>called end "
'for iii=0 to ubound(flst)
'response.write "<br> <font color=#00ffff>iii="&iii&":"&flst(iii,0)&" is_opend:"&flst(iii,2)&"</font><br>"
'next
'end  test-----------------------------




end function












function zhangkai_all_folder()



num_folders=0


if haved=0 then

a_len=-1
else


a_len=ubound(flst)




end if



for iq=0 to a_len





'response.write a_len






if flst(iq,1)=0 and flst(iq,2)=0 then








flst(iq,2)=1
call list_folder_s_files(iq)

num_folders=num_folders+1


'递归遍历
call zhangkai_all_folder()



if haved=0 then

a_len=-1
else


a_len=ubound(flst)
end if


end if






next



end function




function list_all_files()

if haved=0 then

a_len=-1
else


a_len=ubound(flst)
end if


for ipp=0 to a_len

 
if flst(ipp,1)=1 then

response.write flst(ipp,0)&"<br>"
end if

next


end function




function  do_copy_all_asp_and_img(is_qiyea)

per_numxa=2

Set myCache1=new clsCache_b

myCache1.name=CacheTemp & "cop_now_pos_a"
   If myCache1.valid then 
      now_a_pos=myCache1.value
   Else
      now_a_pos=0
   End If

myCache1.name=CacheTemp & "cop_arr"
   If myCache1.valid then 
      cop_arra=myCache1.value
   Else
      cop_arra=empty
   End If
   
   myCache1.name=CacheTemp & "cop_havd"
   If myCache1.valid then 
      haved=myCache1.value
   Else
      haved=0
   End If
   


Set myCache1=nothing

'response.write ubound(cop_arra)
'response.end 

sssdxx=sssd
ppathxx=ppath

if haved=0 then

a_len=-1
else


a_len=ubound(cop_arra)
end if
ii_p_num=0



for ipp=now_a_pos to a_len
ii_p_num=ii_p_num+1
 
if cop_arra(ipp,1)=1 then

'文件名路径
eee1=cop_arra(ipp,0)


if instr(1,eee1,"{",1)=0 and instr(1,eee1,"}",1)=0  then
sss111=filea.ShowFileAccessInfo(server.mappath("../../"&ppathxx&sssdxx&eee1),7)
else
sss111=0
end if

if is_qiyea=1 then
ppathtt=nd_webhtml_output_folder_qiye
else
ppathtt=nd_webhtml_output_folder
end if


need_copy=0

if filea.ReportFolderStatus(server.mappath("../../"&ppathtt&"/"&eee1))=1 then

sss111bb=filea.ShowFileAccessInfo(server.mappath("../../"&ppathtt&"/"&eee1),7)


'小于13000字节可能导致文件修改后文件大小没变,故加了 or sss111<13000
if sss111<>sss111bb or sss111<13000 then

need_copy=1

end if


else
need_copy=1

end if
 
extnm=lcase(mid(eee1,inStrRev(eee1,".")+1,len(eee1)-inStrRev(eee1,".")))
is_aspf=0



if extnm="asp" then 
need_copy=1
is_aspf=1
end if

'拷首页,但由根目录下的index.asp来转向到/whtml/index.htm
'if lcase(eee1)="index.asp" or lcase(eee1)="default.asp" then 

'need_copy=0

'end if


if need_copy=1 then


'如不存在目标目录则先创建目录
call createfile("../../"&ppathtt&"/"&eee1,"1111",true)
call deletefile("../../"&ppathtt&"/"&eee1)
if is_aspf=1 then
coantt=loadfile("../../"&ppathxx&sssdxx&eee1)

coantt=get_all_aspfile_s_ajax(coantt,channel_typea,ppathxx&sssdxx&eee1)

call createfile("../../"&ppathtt&"/"&eee1,coantt,true)

else


call filea.CopyAFile(server.mappath("../../"&ppathxx&sssdxx&eee1), server.mappath("../../"&ppathtt&"/"&eee1))
end if
end if




end if


had_ended=0
if ipp>=a_len then
had_ended=1
exit for
end if

if ii_p_num>=per_numxa then 
ippaaab=ipp+1
exit for
end if


next
Set myCache2=new clsCache_b

   myCache2.name=CacheTemp & "cop_now_pos_a"
   Call myCache2.clean()  
      myCache2.add ippaaab,Dateadd("h",999,now)
   now_asp_ppppta=ppathxx&sssdxx&eee1

Set myCache2=nothing

response.ContentType="text/xml"

response.write "<?xml   version=""1.0""   encoding=""gb2312""?>"

response.write "<aaaa>"
response.write "<affff><![CDATA["&cstr(had_ended)
response.write "]]></affff><affff2><![CDATA["&now_asp_ppppta&"]]></affff2><affff3><![CDATA["&"ok"&"]]></affff3></aaaa>"






end function











'*************************************************************************************************
'Function get_md5_htm_filename_by_aspfile(aspfilename,........)
'自动排序asp文件后的url参数名并生成其md5后的htm文件名,
'对于多个page565656528之类的url参数名,按page565656528之类在asp网页里出现的次序来排序,
'并且page565656528之类的url参数名 排在 url参数名集合最后几位
'page565656528=3记为pagerndaspcpuvar0=3,来放进url参数名集合里来生成其md5后的htm文件名,
'page565656528不用放进,因为它的565656528是随机的
'注意aaaa/wwss.asp?cid=22&id=1这样的含目录的asp文件名的处理,目录名也要包含进去来算md5后的htm文件名
'所有asp文件名都lcase和trim处理后再算md5后的htm文件名
',另外,由于用扫描cid方式扫描分类页时加了 频道id参数:id,故无论真实的链到分类页的链接里有无加 频道id参数:id,
'都强制加 频道id参数:id 到 真实的链到分类页的链接里,以使按url参数名生成其md5后的htm文件名 能统一起来
'*************************************************************************************************
Function get_md5_htm_filename_by_aspfilename(aspfilename,aspfile_output_htmlcontent,dothtm_or_html,is_md5ed,qianzhui_lujin)

redim canming(999)
redim canvalue(999)
redim minvalue_index(999)
redim canming_temp(999)
redim canvalue_temp(999)

aspfilename=trim(lcase(aspfilename))


if instr(1,aspfilename,"?",1)<>0 and len(aspfilename)>=instr(1,aspfilename,"?",1)+1 then
urlcan=mid(aspfilename,instr(1,aspfilename,"?",1)+1,len(aspfilename)-instr(1,aspfilename,"?",1))
else
urlcan=""
end if

if instr(1,aspfilename,"?",1)<>0 then
sfilename=left(aspfilename,instr(1,aspfilename,"?",1)-1)
else
sfilename=aspfilename
end if
strUrl=lcase(JoinChara(sfilename))
Fy_Url1=urlcan
Fy_a1=split(Fy_Url1,"&")

redim canming(ubound(Fy_a1)+1)
redim canvalue(ubound(Fy_a1)+1)
lenttt=ubound(Fy_a1)


for Fy_x1=0 to ubound(Fy_a1)

if instr(1,Fy_a1(Fy_x1),"=",1)=0 then



if is_md5ed=1 then
get_md5_htm_filename_by_aspfilename=md5(lcase(aspfilename)&nd_fang_caiji_rand_str_x)&"."&dothtm_or_html
else
get_md5_htm_filename_by_aspfilename=lcase(aspfilename)
end if

exit function 

else

if instr(Fy_a1(Fy_x1),"=")=len(Fy_a1(Fy_x1)) then
Fy_v =""
else
Fy_v = mid(Fy_a1(Fy_x1),instr(Fy_a1(Fy_x1),"=")+1,len(Fy_a1(Fy_x1)))
end if
Fy_Cs_name= left(Fy_a1(Fy_x1),instr(Fy_a1(Fy_x1),"=")-1)

canming(Fy_x1)=Fy_Cs_name
canvalue(Fy_x1)=Fy_v

end if
Next



'排序算法:

redim minvalue_index(ubound(Fy_a1)+1)


for isssaa=0 to lenttt
minvalue_index(isssaa)=-123
next

redim pagevvvar(ubound(Fy_a1)+1)
redim pagevvvar_v(ubound(Fy_a1)+1)
pvar_pos=0
redim pagevvvar_minindex(ubound(Fy_a1)+1)


for isssaa2=0 to lenttt
pagevvvar_minindex(isssaa2)=-123
next

'----------paixu code---------------
for nowmin=0 to lenttt

firstrun=1

for mppp=0 to lenttt



'----------排除排过了的元素
need_break=0
for nowmintest=0 to nowmin

if minvalue_index(nowmintest)=mppp then
need_break=1
exit for
end if

next



'--------end 排除排过了的元素

if need_break=0 then

if firstrun=1 then
firstrun=0
minvalue_index(nowmin)=mppp
end if

end if


'----------排除page9256572330之类
if need_break=0 then

if len(canming(minvalue_index(nowmin)))=14 and lcase(left(canming(minvalue_index(nowmin)),4))="page" then

tstdd=mid(canming(minvalue_index(nowmin)),5,10)
href_reg22="[0-9]{10}"
Set regEx22 = New RegExp '建立正则表达式。 
regEx22.Pattern = href_reg22 '设置模式。 
regEx22.IgnoreCase = True '设置是否区分字符大小写。
regEx22.Global = true 
if regEx22.test(tstdd)=true then
need_break=1


need_jilup=1
for piiis=0 to pvar_pos-1

if lcase(pagevvvar(piiis))=lcase(canming(minvalue_index(nowmin))) then
need_jilup=0
exit for
end if

next

if need_jilup=1 then
pagevvvar(pvar_pos)=canming(minvalue_index(nowmin))
pagevvvar_v(pvar_pos)=canvalue(minvalue_index(nowmin))
pvar_pos=pvar_pos+1
end if



end if
set regEx22=nothing
 


end if

if len(canming(mppp))=14 and lcase(left(canming(mppp),4))="page" then

tstdd=mid(canming(mppp),5,10)
href_reg22="[0-9]{10}"
Set regEx22 = New RegExp '建立正则表达式。 
regEx22.Pattern = href_reg22 '设置模式。 
regEx22.IgnoreCase = True '设置是否区分字符大小写。
regEx22.Global = true 
if regEx22.test(tstdd)=true then
need_break=1


need_jilup=1
for piiis=0 to pvar_pos-1

if lcase(pagevvvar(piiis))=lcase(canming(mppp)) then
need_jilup=0
exit for
end if

next

if need_jilup=1 then
pagevvvar(pvar_pos)=canming(mppp)
pagevvvar_v(pvar_pos)=canvalue(mppp)
pvar_pos=pvar_pos+1
end if


end if
set regEx22=nothing


end if

end if

'--------end 排除page9256572330之类




if need_break=0 then




'-------对于含多个字符的字符串的 字符串排序 先后的比较,从低位字符比较起,直到最高位字符
for char_wei=1 to 999

if len(canming(minvalue_index(nowmin)))>=char_wei and len(canming(mppp))<char_wei then
minvalue_index(nowmin)=mppp
exit for
end if


if len(canming(minvalue_index(nowmin)))<char_wei and len(canming(mppp))>=char_wei then
exit for
end if


if len(canming(minvalue_index(nowmin)))<char_wei and len(canming(mppp))<char_wei and len(canming(minvalue_index(nowmin)))<len(canming(mppp)) then
exit for
end if

if len(canming(minvalue_index(nowmin)))<char_wei and len(canming(mppp))<char_wei and len(canming(minvalue_index(nowmin)))>len(canming(mppp)) then
minvalue_index(nowmin)=mppp
exit for
end if


if len(canming(minvalue_index(nowmin)))<char_wei and len(canming(mppp))<char_wei and len(canming(minvalue_index(nowmin)))=len(canming(mppp)) then
exit for
end if


if len(canming(minvalue_index(nowmin)))>=char_wei and len(canming(mppp))>=char_wei then
'不能判断,执行下面的代码继续进一步判断
end if



if asc(lcase(mid(canming(mppp),char_wei,1)))<asc(lcase(mid(canming(minvalue_index(nowmin)),char_wei,1))) then
minvalue_index(nowmin)=mppp
exit for
end if
if asc(lcase(mid(canming(mppp),char_wei,1)))>asc(lcase(mid(canming(minvalue_index(nowmin)),char_wei,1))) then
exit for
end if

if asc(lcase(mid(canming(mppp),char_wei,1)))=asc(lcase(mid(canming(minvalue_index(nowmin)),char_wei,1))) then
end if


next
'----end---对于含多个字符的字符串的 字符串排序 先后的比较,从低位字符比较起,直到最高位字符







end if


next

next

'----------end paixu code-------



for ippsxxa=0 to pvar_pos-1


next 

if pvar_pos-1>=0 then

'page123123123,page5634534534之类的排序code:
'page123123123,page5634534534之类的排序code:

'----------paixu code2---------------

for nowmin2=0 to pvar_pos-1

firstrun=1

for mppp2=0 to pvar_pos-1




'----------排除排过了的元素 2
need_break=0
for nowmintest2=0 to nowmin2

if pagevvvar_minindex(nowmintest2)=mppp2 then
need_break=1
exit for
end if

next


'--------end 排除排过了的元素 2



if need_break=0 then

if firstrun=1 then
firstrun=0
pagevvvar_minindex(nowmin2)=mppp2
end if

end if


if need_break=0 then

poshtmla=instr(1,aspfile_output_htmlcontent,pagevvvar(mppp2),1)
poshtmlb=instr(1,aspfile_output_htmlcontent,pagevvvar(pagevvvar_minindex(nowmin2)),1)

if poshtmla<poshtmlb then
pagevvvar_minindex(nowmin2)=mppp2

end if

end if


next

next





'----------end paixu code2---------------


redim pagevvvar_temp(pvar_pos)
redim pagevvvar_v_temp(pvar_pos)
for azasxx=0 to pvar_pos-1
pagevvvar_temp(azasxx)=pagevvvar(azasxx)
pagevvvar_v_temp(azasxx)=pagevvvar_v(azasxx)
Next

for azasxxb=0 to pvar_pos-1
pagevvvar(azasxxb)=pagevvvar_temp(pagevvvar_minindex(azasxxb))
pagevvvar_v(azasxxb)=pagevvvar_v_temp(pagevvvar_minindex(azasxxb))
Next


end if







for Fy_x1a=0 to lenttt
canming_temp(Fy_x1a)=canming(Fy_x1a)
canvalue_temp(Fy_x1a)=canvalue(Fy_x1a)
Next

for Fy_x1aa=0 to lenttt
canming(Fy_x1aa)=canming_temp(minvalue_index(Fy_x1aa))
canvalue(Fy_x1aa)=canvalue_temp(minvalue_index(Fy_x1aa))
Next

if pvar_pos-1>=0 then
for Fy_x1aass=(lenttt-pvar_pos+1) to lenttt


if is_md5ed=1 then
canming(Fy_x1aass)="pagerndaspcpuvar"&cstr(Fy_x1aass-(lenttt-pvar_pos+1))
else
canming(Fy_x1aass)=pagevvvar(Fy_x1aass-(lenttt-pvar_pos+1))
end if


canvalue(Fy_x1aass)=pagevvvar_v(Fy_x1aass-(lenttt-pvar_pos+1))
Next
end if



for Fy_x1aaa=0 to lenttt
Fy_Cs_name=trim(lcase(canming(Fy_x1aaa)))
Fy_v=trim(lcase(canvalue(Fy_x1aaa)))
if trim(Fy_Cs_name)<>"" then
strUrl=JoinChara(strUrl)
strUrl=strUrl&Fy_Cs_name&"="&Fy_v
end if
next 

'qianzhui_lujin=lcase(trim(qianzhui_lujin))
qianzhui_lujin=""


if is_md5ed=1 then
get_md5_htm_filename_by_aspfilename=md5(qianzhui_lujin&strUrl&nd_fang_caiji_rand_str_x)&"."&dothtm_or_html
else
get_md5_htm_filename_by_aspfilename=qianzhui_lujin&strUrl
end if


End Function








dim connhtm

function openconnhtm()



   ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(dir_set&nd_ttxa_mdb)
    Set connhtm = Server.CreateObject("ADODB.Connection")
    connhtm.open ConnStr
    If Err Then
        Err.Clear
        Set connhtm = Nothing
        Response.Write "数据库连接出错,请检查Config.asp文件中的数据库参数设置。"
        Response.End
    End If

end function


function closeconnhtm()


on error resume next

connhtm.close
set connhtm=nothing

end function


Const JET_3X = 4







Function CompactDB(dbPath, boolIs97)

'-------------------new code1--------------------
'重要
on error resume next
'-------------------new code1--------------------


Dim fso, Engine, strDBPath
strDBPath = left(dbPath,instrrev(DBPath,""))


Set fso = CreateObject(fssoo_nd_var_str_x_customx)



'-------------------new code2--------------------
if fso.FileExists(strDBPath & "temp.mdb") then
fso.DeleteFile(strDBPath & "temp.mdb")
end if
'-------------------new code2--------------------




If fso.FileExists(dbPath) Then
Set Engine = CreateObject("JRO.JetEngine")

If boolIs97 = "True" Then
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath, _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & "temp.mdb;" _
& "Jet OLEDB:Engine Type=" & JET_3X
Else
Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath, _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & "temp.mdb"
End If
fso.CopyFile strDBPath & "temp.mdb",dbpath
fso.DeleteFile(strDBPath & "temp.mdb")
Set fso = nothing
Set Engine = nothing
CompactDB = "你的数据库 " & dbpath & " 已经压缩完毕" & vbCrLf
Else
CompactDB = "The database name or path has not been found. Try Again" & vbCrLf
End If

End Function














'类似baidu的蜘蛛爬虫算法之一键拷站  ------柏拉图的程序 著:
'类似baidu的蜘蛛爬虫算法之一键拷站  ------柏拉图的程序 著:
'per_run_htmed_num:设置每次ajax调用本asp时生成几页htm页后结束
function kaozhan_all_htm(weburl,is_qiye,per_run_htmed_num,towherehtml)


towhere_folderxxa=towherehtml





weburl=replace(weburl,"\","/")

weburl=trim(weburl)
weburl3=weburl
if lcase(left(weburl,7))<>"http://" then
weburl="http://"&weburl
end if


fin_posaa=-123

for iiaappss=8 to len(weburl)
if mid(weburl,iiaappss,1)="/" then
fin_posaa=iiaappss
exit for 
end if
next


if fin_posaa<>-123 then
weburl2=mid(weburl,1,fin_posaa-1)
webpagef=mid(weburl,fin_posaa,len(weburl)-fin_posaa+1)
else
webpagef="/"
weburl2=weburl
end if

 

if webpagef="/" then


if debug_on="off" then

response.ContentType="text/xml"

response.write "<?xml   version=""1.0""   encoding=""gb2312""?>"

response.write "<aaaa>"
response.write "<affff><![CDATA["&cstr("0")
response.write "]]></affff><affff2><![CDATA["&"0"&"]]></affff2><affff3><![CDATA["&"notv"&"]]></affff3><affff4><![CDATA["&"10"&"]]></affff4><affff5><![CDATA["&"1"&"]]></affff5></aaaa>"



end if

exit function
end if



now_web_www=weburl2





'如果page_url指定的网页打开后会自动跳转到另一网页,则page_url要填此跳转后的网页的地址,如page_url为index.asp,打开index.asp后自动跳转到/web/index.asp,则page_url要填/web/index.asp才行
page_url=lcase(trim(replace(webpagef,"\","/")))







if lcase(left(page_url,7))="http://" then

fin_posaa=-123

for iiaappss=8 to len(page_url)
if mid(page_url,iiaappss,1)="/" then
fin_posaa=iiaappss
exit for 
end if
next


if fin_posaa<>-123 then
if fin_posaa+1>len(page_url) then
page_url=""
else
page_url=mid(page_url,fin_posaa+1,len(page_url)-(fin_posaa+1)+1)
end if
else
page_url=""
end if

end if


if left(page_url,1)<>"/" then
page_url_r="/"&page_url
else
page_url_r=page_url
end if


page_url_rppph=left(page_url_r,instrrev(page_url_r,"/"))


if left(page_url,1)="/" then

page_url=mid(page_url,2,len(page_url))

end if


if page_url="" then
exit function 
end if

'******************3
class_page_url=GetUrlpath()&"/"&page_url
'******************3









call load_files_all_type(is_qiye)


per_run_htmed_num=clng(per_run_htmed_num)

'缓存路径
CacheTemp=Lcase(trim(request.ServerVariables("SCRIPT_NAME")))
CacheTemp=left(CacheTemp,instrrev(CacheTemp,"/"))
CacheTemp=replace(CacheTemp,"\","_")
CacheTemp=replace(CacheTemp,"/","_")
CacheTemp=nd_admin_cach_varb_name&"cachecls"& CacheTemp

Set myCache=new clsCache_b

if request("pos")="0" then



'============1

call openconnhtm()

connhtm.execute("update ND_stutas set c_nofirstrun_a='0'")
connhtm.execute("update ND_stutas set c_firstrunb_a='1'")



connhtm.execute("delete from ND_htm_hrefs_cachec")



call closeconnhtm()

call CompactDB(Server.MapPath(dir_set&nd_ttxa_mdb), "-1")






   
call openconnhtm()
connhtm.execute("update ND_stutas set aspcpu_kz_towhere_folderxxa='"&towhere_folderxxa&"'")
connhtm.execute("update ND_stutas set aspcpu_kz_www_x_web='"&now_web_www&"'")
connhtm.execute("delete from ND_htm_hrefs_cachec_piccss")
call closeconnhtm()


'============1
   
end if




'===================a8
call openconnhtm() 
set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_stutas",connhtm,1,1
nofirstruna=clng(rshtm("c_nofirstrun_a"))
rshtm.close
set rshtm=nothing
call closeconnhtm() 
'==================a8







if nofirstruna=1 then



'===================a7
call openconnhtm() 
set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_stutas",connhtm,1,1
firstrunb=clng(rshtm("c_firstrunb_a"))
rshtm.close
set rshtm=nothing
call closeconnhtm() 
'==================a7
   

end if




'class_page_url可以是1.asp或aa/1/1.asp带子目录形式的
'class_page_url可以是1.asp或aa/1/1.asp带子目录形式的
filenamea=class_page_url


if is_qiye=1 then

htmlfld=ttahtml&"/"&towherehtml
else 

htmlfld=ttahtml&"/"&towherehtml
end if
weburla2=weburla

'***************************4
weburla=class_page_url
weburlauu=trim(lcase(class_page_url))
'***************************4




if nofirstruna=0 then
dataax=GetBodyx(weburla) 

encodeingxxxhh=encodeingxxx
end if

'response.write dataax











'class_page_url只会是aaa/1.asp ,dd/2.asp之类,不会是/aaa/1.asp之类
'提取asp文件名前的目录路径到sfilenameab变量
sfilenamea=replace(class_page_url,"\","/")

if instr(1,sfilenamea,"/",1)<>0 then
sfilenameab=left(sfilenamea,instrrev(sfilenamea,"/"))
else
sfilenameab=""
end if



if nofirstruna=0 then
'如不存在html目录则创建html目录
call createfile("../../"&htmlfld&"/testt.txt","1111",true)
call deletefile("../../"&htmlfld&"/testt.txt")



'*****************************5.1

if class_page_url=GetUrlpath()&"/index.asp" or class_page_url=GetUrlpath()&"/default.asp"  then
filenamea_htm=page_url_rppph&"index."&htm_ext_ming
else
'*****************************5.1

filenamea_htm=page_url_rppph&get_md5_htm_filename_by_aspfilename(weburlauu,dataax,htm_ext_ming,1,sfilenameab)

end if

  
call openconnhtm()
connhtm.execute("update ND_stutas set nd_x_now_first_in_pagename='"&filenamea_htm&"'")
call closeconnhtm()



redim need_htmled_hrefArraya(999,5)
now_htma_pos=0






'===================2
call openconnhtm() 
set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_htm_hrefs_cachec",connhtm,1,3
rshtm.addnew

rshtm("other_or_self")="self_asp"
rshtm("jichu_dizhi")=class_page_url
rshtm("asp_path")=weburlauu
rshtm("htm_path")=filenamea_htm
rshtm("is_htmed")="1"

rshtm.update

rshtm.close
set rshtm=nothing

call closeconnhtm() 



'===================2







now_asp_ppppt=weburlauu

have_htmedok_num=0
firstrunb=1



end if

have_need_htmed=1

run_htmed_count=0
had_ended=0
do while have_need_htmed=1
have_need_htmed=0


run_htmed_count=run_htmed_count+1

fnd_htm_fl_posa=-123

if firstrunb=1 then
firstrunb=0
else


'生成/xasp/内的与自己同名的asp页的htm






'===================3
call openconnhtm() 
set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_htm_hrefs_cachec where other_or_self='self_asp' and htm_path<>'' and is_htmed='0'",connhtm,1,1

hhhvd_sx=0
if not rshtm.eof then
datss_1=rshtm("other_or_self")
datss_2=rshtm("jichu_dizhi")
datss_3=trim(rshtm("asp_path"))
datss_4=rshtm("htm_path")
datss_5=rshtm("is_htmed")


hhhvd_sx=1
nnnnow_rs_iid=rshtm("id")
end if
rshtm.close
set rshtm=nothing

call closeconnhtm() 





if hhhvd_sx=1 then


'===================3







have_need_htmed=1

now_asp_ppppt=datss_3

'if is_qiye=1 then
'weburlaa="../../"&nd_web_output_folder_qiye&"/"&sfilenameab&datss_3
'else 
'weburlaa="../../"&nd_web_output_folder&"/"&sfilenameab&datss_3
'end if
weburlaa=datss_3
my_cang_p=datss_3


'-----
datss_31=replace(datss_3,"\","/")
if instr(1,datss_31,"/",1)<>0 then
datss_31=mid(datss_31,instrrev(datss_31,"/")+1,len(datss_31)-(instrrev(datss_31,"/")+1)+1)
end if
if instr(1,datss_31,"?",1)<>0 then
sfilename=left(datss_31,instr(1,datss_31,"?",1)-1)
else
sfilename=datss_31
end if

sfilename=replace(sfilename,"\","/")
if instr(1,sfilename,"/",1)<>0 then

sfilename=mid(sfilename,instrrev(sfilename,"/")+1,len(sfilename)-(instrrev(sfilename,"/")+1)+1)
end if


ftypppe1=get_file_type(sfilename)
doit_mode="no"
doit_mode=get_url_mode_to_make_html(ftypppe1)
'-----





'==1==
'*****************************6
class_page_url=weburlaa
if instr(1,class_page_url,"?",1)<>0 then 
if instr(1,class_page_url,"?",1)=1 then
class_page_url=""
else
class_page_url=mid(class_page_url,1,instr(1,class_page_url,"?",1)-1)
end if
end if

'class_page_url只会是aaa/1.asp ,dd/2.asp之类,不会是/aaa/1.asp之类
'提取asp文件名前的目录路径到sfilenameab变量
sfilenamea=replace(class_page_url,"\","/")

if instr(1,sfilenamea,"/",1)<>0 then
sfilenameab=left(sfilenamea,instrrev(sfilenamea,"/"))
else
sfilenameab=""
end if
'*****************************6
'==1==







dataax=GetBodyx(weburlaa)
encodeingxxxhh=encodeingxxx
filenamea_htm=datss_4

'================a1
fnd_htm_fl_posa=1
'================a1


 
end if





'生成/xasp/内的与自己非同名的其他asp页的htm,注意只搜索/xasp/内的asp页
if have_need_htmed=0 then








'===================3
call openconnhtm() 
set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_htm_hrefs_cachec where other_or_self='other_asp' and htm_path<>'' and is_htmed='0'",connhtm,1,1
hhhvd_sx=0
if not rshtm.eof then
datss_1=rshtm("other_or_self")
datss_2=rshtm("jichu_dizhi")
datss_3=trim(rshtm("asp_path"))
datss_4=rshtm("htm_path")
datss_5=rshtm("is_htmed")

hhhvd_sx=1
nnnnow_rs_iid=rshtm("id")
end if

rshtm.close
set rshtm=nothing

call closeconnhtm() 

'===================3




if hhhvd_sx=1 then





have_need_htmed=1


now_asp_ppppt=datss_3
weburlaa=datss_3
my_cang_p=datss_3

'-----
datss_31=replace(datss_3,"\","/")
if instr(1,datss_31,"/",1)<>0 then
datss_31=mid(datss_31,instrrev(datss_31,"/")+1,len(datss_31)-(instrrev(datss_31,"/")+1)+1)
end if
if instr(1,datss_31,"?",1)<>0 then
sfilename=left(datss_31,instr(1,datss_31,"?",1)-1)
else
sfilename=datss_31
end if


sfilename=replace(sfilename,"\","/")
if instr(1,sfilename,"/",1)<>0 then

sfilename=mid(sfilename,instrrev(sfilename,"/")+1,len(sfilename)-(instrrev(sfilename,"/")+1)+1)
end if


ftypppe1=get_file_type(sfilename)
doit_mode="no"
doit_mode=get_url_mode_to_make_html(ftypppe1)
'-----




'==1==
'**********************************7
class_page_url=weburlaa
if instr(1,class_page_url,"?",1)<>0 then 
if instr(1,class_page_url,"?",1)=1 then
class_page_url=""
else
class_page_url=mid(class_page_url,1,instr(1,class_page_url,"?",1)-1)
end if
end if

'class_page_url只会是aaa/1.asp ,dd/2.asp之类,不会是/aaa/1.asp之类
'提取asp文件名前的目录路径到sfilenameab变量
sfilenamea=replace(class_page_url,"\","/")

if instr(1,sfilenamea,"/",1)<>0 then
sfilenameab=left(sfilenamea,instrrev(sfilenamea,"/"))
else
sfilenameab=""
end if
'**********************************7
'==1==




dataax=GetBodyx(weburlaa)
encodeingxxxhh=encodeingxxx
filenamea_htm=datss_4

'================a1
fnd_htm_fl_posa=1
'================a1
 
end if


end if


if have_need_htmed=0 then 
had_ended=1
exit do
end if




end if



'myCache.name="aspcpu_ndx_needdown"
'   If myCache.valid then 
'      need_href_arrayff=myCache.value
'   Else
'      need_href_arrayff=""
'   End If


connntxx=get_need_htmled_hrefArray_from_a_page_x_cid(dataax,cid_var_name,pindao_id_var_name,cid,class_page_url,pindao_id,htm_ext_ming,is_qiye)

erreddda1=0
if err.number<>0 then
connntxx="错误页,抓取时asp运行出错:"&err.description
erreddda1=1
err.clear()

end if


		
	'	 myCache.name="aspcpu_ndx_needdown"
  ' Call myCache.clean()  
  '    myCache.add need_href_arrayff,Dateadd("h",9999,now)




need_htmled_hrefArraya_1=split(need_href_array,"$$need_htmed_aspcpu121$$")
lennehtm=ubound(need_htmled_hrefArraya_1)

is_redirect_page=0

'==================panduan is_redirect_page=============

if lennehtm>=2 then

'是否此链接进入后会response.redirect到另一页


	  Randomize '初始化随机数生成器。
iposhtss=rnd(255)*lennehtm
need_htmled_1=split(need_htmled_hrefArraya_1(iposhtss),"$x$1$,$1$x$")
need_htmled_1_1=need_htmled_1(0)
need_htmled_1_2=need_htmled_1(1)
need_htmled_1_3=need_htmled_1(2)
need_htmled_1_4=need_htmled_1(3)
weburlaa=GetUrlpath()&need_htmled_1_3
dataaxx1=GetBodyx(weburlaa)
if nd_http_200ed_ok=0 then

  Randomize '初始化随机数生成器。
iposhtss=rnd(255)*lennehtm
need_htmled_1=split(need_htmled_hrefArraya_1(iposhtss),"$x$1$,$1$x$")
need_htmled_1_1=need_htmled_1(0)
need_htmled_1_2=need_htmled_1(1)
need_htmled_1_3=need_htmled_1(2)
need_htmled_1_4=need_htmled_1(3)
weburlaa=GetUrlpath()&need_htmled_1_3
dataaxx1=GetBodyx(weburlaa)

if nd_http_200ed_ok=0 then
is_redirect_page=1
connntxx="此页是response.redirect而重定向来的页面,所有相对链接的基地址已重定向,无法判断,舍去"
encodeingxxx="gb2312"
end if

end if


end if


if is_redirect_page=0 and erreddda1=0 then

'==================end is_redirect_page=============



'===================4



call openconnhtm() 

for iposht=0 to lennehtm

need_htmled_1=split(need_htmled_hrefArraya_1(iposht),"$x$1$,$1$x$")
need_htmled_1_1=need_htmled_1(0)
need_htmled_1_2=need_htmled_1(1)
need_htmled_1_3=need_htmled_1(2)
need_htmled_1_4=need_htmled_1(3)

is_haved_filea=0


'排除重复的文件
set rshtm2=server.CreateObject("adodb.recordset")
rshtm2.open "select * from ND_htm_hrefs_cachec where htm_path='"&cstr(need_htmled_1_4)&"' and htm_path<>''",connhtm,1,1
if not rshtm2.eof then
is_haved_filea=1
end if
rshtm2.close
set rshtm2=nothing
'end 排除重复的文件


if is_haved_filea=0 then


set rshtm=server.CreateObject("adodb.recordset")
rshtm.open "select * from ND_htm_hrefs_cachec",connhtm,1,3
rshtm.addnew

rshtm("other_or_self")=need_htmled_1_1
rshtm("jichu_dizhi")=need_htmled_1_2
rshtm("asp_path")=need_htmled_1_3
rshtm("htm_path")=need_htmled_1_4
rshtm("is_htmed")="0"

rshtm.update
rshtm.close
set rshtm=nothing

 
end if
next

call closeconnhtm()











end if


'connntxx=get_all_html_s_ajax(connntxx,channel_typea,my_cang_p)





'写入时的编码
cur_bianma=encodeingxxxhh

connntxx=Filters_dddxx(connntxx)


if cstr(request("bianma"))="1" then
cur_bianma="gb2312"
end if

if cstr(request("bianma"))="2" then
cur_bianma="utf-8"
end if

lujin_reg="^[^\:\*\?\#\|\""\<\>\']+$"


Set regEx5 = New RegExp '建立正则表达式。
regEx5.Pattern = lujin_reg '设置模式。 
regEx5.IgnoreCase = True '设置是否区分字符大小写。
 
'regEx.Global = True '设置全局可用性。
regEx5.Global = true 


if regEx5.test(htmlfld&filenamea_htm)=true then

'写入htm文件
call createfile("../../"&htmlfld&filenamea_htm,connntxx,true)

end if

set regEx5=nothing




'response.Write "<font color=#00ff00>"&"../../"&htmlfld&filenamea_htm&"</font><br>"




have_htmedok_num=have_htmedok_num+1



'=============a2
if firstrunb=0 and fnd_htm_fl_posa<>-123 then
call openconnhtm() 
connhtm.execute("update ND_htm_hrefs_cachec set is_htmed='1' where id="&nnnnow_rs_iid)
call closeconnhtm()
end if
'=============a2



if run_htmed_count>per_run_htmed_num then exit do





loop






'=============a3
call openconnhtm() 
set rshtm2=server.CreateObject("adodb.recordset")
rshtm2.open "select count(*) from ND_htm_hrefs_cachec where is_htmed='1'",connhtm,1,1
if not rshtm2.eof then 
have_htmedok_num=rshtm2(0)
end if
rshtm2.close
set rshtm2=nothing
set rshtm2=server.CreateObject("adodb.recordset")
rshtm2.open "select count(*) from ND_htm_hrefs_cachec",connhtm,1,1
if not rshtm2.eof then 
now_htma_pos=rshtm2(0)
end if
rshtm2.close
set rshtm2=nothing

call closeconnhtm()
'=============a3



   

'=============a5

call openconnhtm() 
connhtm.execute("update ND_stutas set c_nofirstrun_a='1'")
connhtm.execute("update ND_stutas set c_firstrunb_a='"&cstr(firstrunb)&"'")
call closeconnhtm()

'=============a5
		




set myCache=nothing


if debug_on="off" then


if err.number<>0 then

err.clear

response.ContentType="text/xml"

response.write "<?xml   version=""1.0""   encoding=""gb2312""?>"

response.write "<aaaa>"
response.write "<affff><![CDATA["&"0"
response.write "]]></affff><affff2><![CDATA["&replace(err.description,chr(34),"")&"]]></affff2><affff3><![CDATA["&"wrong"&"]]></affff3><affff4><![CDATA["&"11"&"]]></affff4><affff5><![CDATA["&"1"&"]]></affff5></aaaa>"




else



response.ContentType="text/xml"

response.write "<?xml   version=""1.0""   encoding=""gb2312""?>"

response.write "<aaaa>"
response.write "<affff><![CDATA["&cstr(had_ended)
response.write "]]></affff><affff2><![CDATA["&now_asp_ppppt&"]]></affff2><affff3><![CDATA["&"ok"&"]]></affff3><affff4><![CDATA["&cstr(now_htma_pos)&"]]></affff4><affff5><![CDATA["&cstr(have_htmedok_num)&"]]></affff5></aaaa>"

end if

end if



end Function









function find_url_zhi(my_cang_paaaa,ming)

my_cang_paaaa=replace(my_cang_paaaa,"\","/")
if instr(1,my_cang_paaaa,"/",1)<>0 then

my_cang_paaaa=mid(my_cang_paaaa,instrrev(my_cang_paaaa,"/")+1,len(my_cang_paaaa)-(instrrev(my_cang_paaaa,"/")+1)+1)

end if

if instr(1,my_cang_paaaa,"?",1)=0 then
find_url_zhi=""
exit function
end if




if instr(1,my_cang_paaaa,"?",1)<>0 and len(my_cang_paaaa)>=instr(1,my_cang_paaaa,"?",1)+1 then
urlcan=mid(my_cang_paaaa,instr(1,my_cang_paaaa,"?",1)+1,len(my_cang_paaaa)-instr(1,my_cang_paaaa,"?",1))
else
urlcan=""
end if


Fy_Url1=urlcan
Fy_a1=split(Fy_Url1,"&")

redim canming(ubound(Fy_a1)+1)
redim canvalue(ubound(Fy_a1)+1)
lenttt=ubound(Fy_a1)


for Fy_x1=0 to ubound(Fy_a1)
if instr(Fy_a1(Fy_x1),"=")=len(Fy_a1(Fy_x1)) then
Fy_v =""
else
Fy_v = mid(Fy_a1(Fy_x1),instr(Fy_a1(Fy_x1),"=")+1,len(Fy_a1(Fy_x1)))
end if
Fy_Cs_name= left(Fy_a1(Fy_x1),instr(Fy_a1(Fy_x1),"=")-1)

canming(Fy_x1)=Fy_Cs_name
canvalue(Fy_x1)=Fy_v
Next


find_url_zhi=""
for ntofnd1=0 to lenttt
if lcase(trim(canming(ntofnd1)))=lcase(trim(ming)) then
find_url_zhi=canvalue(ntofnd1)
exit for
end if
next



end Function


Function Re_Replace2(retxt)

	Re_Replace2 = Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(retxt, "[", "\["), "]", "\]"), "(", "\("), ")", "\)"), "$", "\$"), "^", "\^"), "{", "\{"), "}", "\}"), "+", "\+"), ".", "\."), "<", "\<"), ">", "\>"), "-", "\-")
	
End Function





function get_all_html_s_ajax(contt,channel_typea,my_cang_paa)


now_dingcen_labelname=""
now_dingcen_params=""
now_dingcen_label_s_pos=-123
now_dingcen_label_e_pos=-122

my_cang_paac=my_cang_paa
havssssaaaqw=""
havzmled=""
xuhao_fangzhichongfu_js=0

get_all_html_s_ajax=contt

nowiiposs=1
have_ajaxaa=1

do while have_ajaxaa=1
have_ajaxaa=0


ssass1="<!--nd_complie_linkx_start:[$$"
ssa1=instr(nowiiposs,contt,ssass1,1)


start_a_1=ssa1

'找到<!--nd_complie_linkx_start:[$$
if ssa1<>0 then




pos_ab1=-123

for ssa2=0 to 999
if ssa1+len(ssass1)>len(contt) then exit for
if mid(contt,ssa1+len(ssass1)+ssa2,6)="]xx-->" then
pos_ab1=ssa1+len(ssass1)+ssa2
pos_ab11=pos_ab1
exit for
end if
next 

'找到]xx-->
if pos_ab1<>-123 then

have_ajaxaa=1

lable_strr=mid(contt,ssa1+len(ssass1),pos_ab1-(ssa1+len(ssass1)))


pos_ab1=-123
for ssa22=1 to 999
if ssa22>len(lable_strr) then exit for
if mid(lable_strr,ssa22,1)="(" then
pos_ab1=ssa22
exit for
end if
next 


if pos_ab1=-123 then 
'error
nowiiposs=pos_ab11+6
end if


'找到(
if pos_ab1<>-123 and  pos_ab1-1>=1 then 
lable_nname=lcase(mid(lable_strr,1,pos_ab1-1))
lable_paramee=mid(lable_strr,pos_ab1,len(lable_strr)-1)
lable_paramee=mid(lable_paramee,2,len(lable_paramee)-2+1-1)




set Rs44s=server.CreateObject("adodb.recordset")
sql="select * from [ND_label_cache] where lcase(label_name)='"&lable_nname&"'"
Rs44s.open sql,conn,1,1



if Rs44s.eof then

Rs44s.close
set Rs44s=nothing


enndsttr="<!--nd_complie_linkx_end:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
enndiiposs=instr(1,contt,enndsttr,1)
'nowiiposs=enndiiposs+len(enndsttr)

nowiiposs=pos_ab11+6


else


xuhao_fangzhichongfu_js=xuhao_fangzhichongfu_js+1


enndsttr="<!--nd_complie_linkx_end:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
enndiiposs=instr(1,contt,enndsttr,1)

'nowiiposs=enndiiposs+len(enndsttr)
nowiiposs=pos_ab11+6

ennd_a_1=enndiiposs+len(enndsttr)-1




if ssa1>now_dingcen_label_e_pos then

now_dingcen_labelname=lable_nname
now_dingcen_params=lable_paramee
now_dingcen_label_s_pos=ssa1
now_dingcen_label_e_pos=enndiiposs

end if



ltype=rs44s("label_type")
lname=rs44s("label_name")
codeb=rs44s("label_code")
lsql=rs44s("label_sql")
lpath=rs44s("label_full_path_name")
lparams=rs44s("label_params")
label_fenye_num=rs44s("label_fenye_num")
label_beizhu=rs44s("label_beizhu")
is_sys_label=rs44s("is_sys_label")
label_other_params=replace_when_complie(rs44s("label_other_params"))

Rs44s.close
set Rs44s=nothing

htmledxb=find_other_param("htmledxb",label_other_params)
htmledxa=find_other_param("htmledxa",label_other_params)
if htmledxa="" then htmledxa="1"
htmledxax=clng(htmledxa)


'if htmledxb="" then htmledxb=""
sssazxaxx=htmledxb

 if sssazxaxx<>"" then
   sssazxa2=split(sssazxaxx,"$123$121$aspndcpu232$321$")
   
   
   
     	sttrattr="<!--nd_complie_linkx_start:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
    
   	enndsttr="<!--nd_complie_linkx_end:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
   
   	if start_a_1-1+len(sttrattr)>=1 then
	qian_aaa=mid(contt,1,start_a_1-1+len(sttrattr))
	else
	qian_aaa=""
	end if
	if ennd_a_1+1-len(enndsttr)-1<=len(contt) then
	after_aaa=mid(contt,ennd_a_1+1-len(enndsttr),len(contt)-(ennd_a_1+1-len(enndsttr))+1)
	else
	after_aaa=""
	end if
	

	
	
	my_aaa=mid(contt,start_a_1-1+len(sttrattr)+1,(ennd_a_1+1-len(enndsttr)-1)-(start_a_1-1+len(sttrattr)+1)+1)
   
   
   old_d_len=len(my_aaa)

   
   
   
   
   
   
   for qdddpa=0 to ubound(sssazxa2)
   sssazxa2_1=sssazxa2(qdddpa)
   sssazxa3=split(sssazxa2_1,"$123$121$accndcpu232$321$")
   
   sssazxa3_1=replace_when_complie(replace(sssazxa3(0),chr(34),""))
   sssazxa3_2=replace_when_complie(replace(sssazxa3(1),chr(34),""))
   
   
   

   
   
   
   'html.replace(...,"$ajax_start$ 不能为 标签参数含$xx_var_asp$i之类的标签 生成其ajax的js文件调用,请去掉标签参数里的$xx_var_asp$i之类的参数")
  
  
  if htmledxax=2 then 
  
  nowiiposs=pos_ab11+6
  
  
  end if
  
  
  
    if htmledxax=1 or  htmledxax=3   then 
  
  
'----------qqq1------------------
  zhongjian_ajax_asp_cont=loadfile("../../inc/ND_ajax_zhong_asp_template.asp")
  ptypelib=loadfile("../../inc/ND_moban_page_type.asp")
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$include_ND_moban_page_type.asp$",ptypelib)
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$db_str$",main_data_mdb)  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$is_qiye$",cstr(nddd_is_qiye))  
  
  
  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$output_folder_qiye$",nd_web_output_folder_qiye)
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$output_folder$",nd_web_output_folder)  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_admin_login_status_cache$",nd_admin_cach_varb_name)
    
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_mx_complie_temlete_size$",nd_mx_complie_temlete_size)
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_web_admin_folder$",nd_web_admin_folder)  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_webhtml_output_folder$",nd_webhtml_output_folder)
    
    zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_webhtml_output_folder_qiye$",nd_webhtml_output_folder_qiye)
    
   zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$fssoo_nd_var_str_x_customx$",fssoo_nd_var_str_x_customx)
    
  
  
    
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$iscrtfile$$",iscrtfile)
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$w_web_config_template$$",w_web_config_template)  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$w_files_config$$",w_files_config)
   zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$w_files_config_template$$",w_files_config_template) 


  nnnmdd5=loadfile("../../inc/new_md5.asp")
    zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$md5.asp$",nnnmdd5) 
	
	
	
  
  if clng(nddd_is_qiye)=1 then
weburla="../../"&nd_web_output_folder_qiye&"/"
htmlfld=nd_webhtml_output_folder_qiye
else 
weburla="../../"&nd_web_output_folder&"/"
htmlfld=nd_webhtml_output_folder
end if
  
  '写入nd_js_ajax_kernel_zhongjian_asp_reader_x.asp文件
  ttmpffilea="nd_js_ajax_kernel_zhongjian_asp_reader_x.asp"
  
if havssssaaaqw="" then
 havssssaaaqw="1"
call createfile("../../"&htmlfld&"/"&ttmpffilea,zhongjian_ajax_asp_cont,true)

end if

  
content2="{$$"&now_dingcen_labelname&"("&now_dingcen_params&")"&"}"


'h_curfile="xxxfirstned"很重要
h_curfile="xxxfirstned"
complie_dir="../../"&nd_web_admin_folder&"/"&"adminKernel/"
ajax_exe_asp=replace_label_main(content2,"sys/sys123.asp")



Randomize '初始化随机数生成器。
rnddd = cstr(clng(Rnd(255)*99999)+200)&cstr(clng(Rnd(255)*99999)+100)&cstr(clng(Rnd(255)*99999)+1) '产生随机数

div_namea="nd_div_x_"&rnddd


js_ajax_a_t_file="nd_js_ajax_kernel_label_x_"&now_dingcen_labelname&"_"&md5(now_dingcen_params)&".asp"

call createfile("../../"&htmlfld&"/"&js_ajax_a_t_file,ajax_exe_asp,true)
  
    js_ajax_conta=loadfile("../../inc/ND_js_html_ajax_template.asp")
	
	
	
	cang_ss_a=split(now_dingcen_params,",")
	
	
	errvvvaar=0
	ajax_asp_file_url_cang=""
	
	for iccca=0 to ubound(cang_ss_a)
	

	
	dttass1=lcase(trim(cang_ss_a(iccca)))
	if left(dttass1,16)="$xx_request_asp$" then
	cang_mma=mid(dttass1,17,len(dttass1)-17+1)
	
	cang_vva=find_url_zhi(my_cang_paa,cang_mma)
	ajax_asp_file_url_cang=ajax_asp_file_url_cang&cang_mma&"="&cang_vva&"&"
	
	end if
	
	if left(dttass1,12)="$xx_var_asp$" then
	errvvvaar=1
	exit for
	end if

	
	
	next
	
	
	if ajax_asp_file_url_cang<>"" then ajax_asp_file_url_cang=left(ajax_asp_file_url_cang,len(ajax_asp_file_url_cang)-1)
	
	
	
  ajax_asp_file_url_cang=replace(ajax_asp_file_url_cang,"=","$denghaoaspcpu1$")
  ajax_asp_file_url_cang=replace(ajax_asp_file_url_cang,"&","$adnnhaoaspcpu1$")
  ajax_asp_file_url_cang=replace(ajax_asp_file_url_cang,"?","$wnnehaoaspcpu1$")  
  
  
  
  


if clng(nddd_is_qiye)=1 then
weburla="../../"&nd_webhtml_output_folder_qiye&"/"&"1.asp"
else 
weburla="../../"&nd_webhtml_output_folder&"/"&"1.asp"
end if


weburlqq=RelativePath2RootPathv(weburla) 


weburlaa=GetUrlpath()&weburlqq 
weburlaas=weburlaa



href_url_linkot=js_ajax_a_t_file

ConsultUrlxa=weburlaas

aaalinksss=lcase(trim(DefiniteUrlxxc(href_url_linkot,ConsultUrlxa)))


  Randomize '初始化随机数生成器。
rnddd = cstr(clng(Rnd(255)*99999)+200)&cstr(clng(Rnd(255)*99999)+100)&cstr(clng(Rnd(255)*999)+60)'产生随机数

  
  
  
     js_zxml=loadfile("../../inc/zxml.js")
	 
	  
   js_ajax_conta=replace(js_ajax_conta,"$complie$bz_start$",sssazxa3_1)  
   js_ajax_conta=replace(js_ajax_conta,"$complie$bz_end$",sssazxa3_2)    
   js_ajax_conta=replace(js_ajax_conta,"$complie$ajax_asp_file_temp$",ttmpffilea)  
   js_ajax_conta=replace(js_ajax_conta,"$complie$ajax_asp_file$",aaalinksss)    
   js_ajax_conta=replace(js_ajax_conta,"$complie$html_file_div_name$",div_namea)       
   js_ajax_conta=replace(js_ajax_conta,"$complie$ajax_url_cang$",ajax_asp_file_url_cang) 
   js_ajax_conta=replace(js_ajax_conta,"$complie$ajax_url_cang$",ajax_asp_file_url_cang)    
   js_ajax_conta=replace(js_ajax_conta,"$complie$rnd$",rnddd) 
   
   if havzmled="" then
     havzmled="1"
   js_ajax_conta=replace(js_ajax_conta,"$complie$zxml.js$",js_zxml)
   else
   js_ajax_conta=replace(js_ajax_conta,"$complie$zxml.js$","")
   end if
   
   
   
   
   my_cang_paaaa2=replace(my_cang_paac,"\","/")
if instr(1,my_cang_paaaa2,"/",1)<>0 then

   my_cang_paaaa2=replace(my_cang_paaaa2,"/","_")

end if
   my_cang_paaaa2=replace(my_cang_paaaa2,"?","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"&","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"|","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"'","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"!","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"#","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"$","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"%","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"^","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"<","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,">","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"(","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,")","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"{","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"}","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,";","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,",","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"=","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,":","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"[","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"]","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"~","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"`","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"@","_")	
	my_cang_paaaa2=replace(my_cang_paaaa2,"&","_")	
	my_cang_paaaa2=replace(my_cang_paaaa2,"*","_")		
	my_cang_paaaa2=replace(my_cang_paaaa2,".","_")																			
   
     ajaxffileazz="nd_js_ajax_kernel_"&xuhao_fangzhichongfu_js&"_"&lable_nname&"_"&left(md5(lable_paramee),12)&my_cang_paaaa2&".js"
   
 call createfile("../../"&htmlfld&"/"&ajaxffileazz,js_ajax_conta,true)  
   
   
 

href_url_linkot=ajaxffileazz


aaalinksss2=lcase(trim(DefiniteUrlxxc(href_url_linkot,ConsultUrlxa)))
   
   
         
   	if errvvvaar=1 then
	
	div_sttr="不能为 标签参数含$xx_var_asp$i之类的最顶层的标签 生成其ajax的js文件调用,请去掉所有最顶层的标签参数里的$xx_var_asp$i之类的参数"
	else
	
	div_sttr="<div id='"&div_namea&"'>载入中...</div>"&"<script type=text/javascript  src='"&aaalinksss2&"'></script>"
	
	end if
	
	


'[\w\W]解决多行换行字符干扰问题

reg1= Re_Replace2(sssazxa3_1)&"[\w\W]*"&Re_Replace2(sssazxa3_2)

set Reg= new RegExp
Reg.IgnoreCase = True 
Reg.MultiLine = True 
Reg.Pattern =reg1

my_aaa = Reg.replace(my_aaa,div_sttr)


set Reg=nothing

	
   
'---------end qqq1------------------  
  
  
  
  
  
  
  
    end if
	
	
	
  
  
  
   next
   
   new_d_len=len(my_aaa)
    
   contt=qian_aaa&my_aaa&after_aaa
   
   
enndsttr="<!--nd_complie_linkx_end:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
enndiiposs=instr(1,contt,enndsttr,1)



'nowiiposs=enndiiposs+len(enndsttr)
nowiiposs=pos_ab11+6
now_dingcen_label_e_pos=now_dingcen_label_e_pos+(new_d_len-old_d_len)
   
   
   
   
   
   end if
   
   
   


end if






end if







end if



end if




loop

get_all_html_s_ajax=contt


end function


























function get_all_aspfile_s_ajax(contt,channel_typea,my_cang_paa)


now_dingcen_labelname=""
now_dingcen_params=""
now_dingcen_label_s_pos=-123
now_dingcen_label_e_pos=-122

my_cang_paac=my_cang_paa
havssssaaaqw=""
havzmled=""
xuhao_fangzhichongfu_js=0

get_all_aspfile_s_ajax=contt

nowiiposs=1
have_ajaxaa=1

do while have_ajaxaa=1
have_ajaxaa=0


ssass1="<!--nd_complie_linkx_start:[$$"
ssa1=instr(nowiiposs,contt,ssass1,1)


start_a_1=ssa1

'找到<!--nd_complie_linkx_start:[$$
if ssa1<>0 then




pos_ab1=-123

for ssa2=0 to 999
if ssa1+len(ssass1)>len(contt) then exit for
if mid(contt,ssa1+len(ssass1)+ssa2,6)="]xx-->" then
pos_ab1=ssa1+len(ssass1)+ssa2
pos_ab11=pos_ab1
exit for
end if
next 

'找到]xx-->
if pos_ab1<>-123 then

have_ajaxaa=1

lable_strr=mid(contt,ssa1+len(ssass1),pos_ab1-(ssa1+len(ssass1)))


pos_ab1=-123
for ssa22=1 to 999
if ssa22>len(lable_strr) then exit for
if mid(lable_strr,ssa22,1)="(" then
pos_ab1=ssa22
exit for
end if
next 


if pos_ab1=-123 then 
'error
nowiiposs=pos_ab11+6
end if


'找到(
if pos_ab1<>-123 and  pos_ab1-1>=1 then 
lable_nname=lcase(mid(lable_strr,1,pos_ab1-1))
lable_paramee=mid(lable_strr,pos_ab1,len(lable_strr)-1)
lable_paramee=mid(lable_paramee,2,len(lable_paramee)-2+1-1)




set Rs44s=server.CreateObject("adodb.recordset")
sql="select * from [ND_label_cache] where lcase(label_name)='"&lable_nname&"'"
Rs44s.open sql,conn,1,1



if Rs44s.eof then

Rs44s.close
set Rs44s=nothing


enndsttr="<!--nd_complie_linkx_end:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
enndiiposs=instr(1,contt,enndsttr,1)
'nowiiposs=enndiiposs+len(enndsttr)

nowiiposs=pos_ab11+6


else


xuhao_fangzhichongfu_js=xuhao_fangzhichongfu_js+1


enndsttr="<!--nd_complie_linkx_end:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
enndiiposs=instr(1,contt,enndsttr,1)

'nowiiposs=enndiiposs+len(enndsttr)
nowiiposs=pos_ab11+6

ennd_a_1=enndiiposs+len(enndsttr)-1




if ssa1>now_dingcen_label_e_pos then

now_dingcen_labelname=lable_nname
now_dingcen_params=lable_paramee
now_dingcen_label_s_pos=ssa1
now_dingcen_label_e_pos=enndiiposs

end if



ltype=rs44s("label_type")
lname=rs44s("label_name")
codeb=rs44s("label_code")
lsql=rs44s("label_sql")
lpath=rs44s("label_full_path_name")
lparams=rs44s("label_params")
label_fenye_num=rs44s("label_fenye_num")
label_beizhu=rs44s("label_beizhu")
is_sys_label=rs44s("is_sys_label")
label_other_params=replace_when_complie(rs44s("label_other_params"))

Rs44s.close
set Rs44s=nothing

htmledxb=find_other_param("htmledxb",label_other_params)
htmledxa=find_other_param("htmledxa",label_other_params)
if htmledxa="" then htmledxa="1"
htmledxax=clng(htmledxa)


'if htmledxb="" then htmledxb=""
sssazxaxx=htmledxb


   
   
   
     	sttrattr="<!--nd_complie_linkx_start:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
    
   	enndsttr="<!--nd_complie_linkx_end:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
   
   	if start_a_1-1+len(sttrattr)>=1 then
	qian_aaa=mid(contt,1,start_a_1-1+len(sttrattr))
	else
	qian_aaa=""
	end if
	if ennd_a_1+1-len(enndsttr)-1<=len(contt) then
	after_aaa=mid(contt,ennd_a_1+1-len(enndsttr),len(contt)-(ennd_a_1+1-len(enndsttr))+1)
	else
	after_aaa=""
	end if
	

	
	
	my_aaa=mid(contt,start_a_1-1+len(sttrattr)+1,(ennd_a_1+1-len(enndsttr)-1)-(start_a_1-1+len(sttrattr)+1)+1)
   
   
   old_d_len=len(my_aaa)

   
   
   
   
   
   
   
   
   
   

   
   
   
   'html.replace(...,"$ajax_start$ 不能为 标签参数含$xx_var_asp$i之类的标签 生成其ajax的js文件调用,请去掉标签参数里的$xx_var_asp$i之类的参数")
  
  
  if htmledxax=2 then 
  
  nowiiposs=pos_ab11+6
  
  
  end if
  
    if htmledxax=3 then 
  
  nowiiposs=pos_ab11+6
  
  
  end if
  
  
  
    if htmledxax=1    then 
  
  
'----------qqq1------------------
  zhongjian_ajax_asp_cont=loadfile("../../inc/ND_ajax_zhong_asp_template.asp")
  ptypelib=loadfile("../../inc/ND_moban_page_type.asp")
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$include_ND_moban_page_type.asp$",ptypelib)
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$db_str$",main_data_mdb)  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$is_qiye$",cstr(nddd_is_qiye))  
  
  
  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$output_folder_qiye$",nd_web_output_folder_qiye)
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$output_folder$",nd_web_output_folder)  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_admin_login_status_cache$",nd_admin_cach_varb_name)
    
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_mx_complie_temlete_size$",nd_mx_complie_temlete_size)
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_web_admin_folder$",nd_web_admin_folder)  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_webhtml_output_folder$",nd_webhtml_output_folder)
    
    zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$nd_webhtml_output_folder_qiye$",nd_webhtml_output_folder_qiye)
    
   zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$fssoo_nd_var_str_x_customx$",fssoo_nd_var_str_x_customx)
    
  
  
    
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$iscrtfile$$",iscrtfile)
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$w_web_config_template$$",w_web_config_template)  
  zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$w_files_config$$",w_files_config)
   zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$w_files_config_template$$",w_files_config_template) 


  nnnmdd5=loadfile("../../inc/new_md5.asp")
    zhongjian_ajax_asp_cont=replace(zhongjian_ajax_asp_cont,"$$xxxx_d_soft_complie$$md5.asp$",nnnmdd5) 
	
	
	
  
  if clng(nddd_is_qiye)=1 then
weburla="../../"&nd_web_output_folder_qiye&"/"
htmlfld=nd_webhtml_output_folder_qiye
else 
weburla="../../"&nd_web_output_folder&"/"
htmlfld=nd_webhtml_output_folder
end if
  
  '写入nd_js_ajax_kernel_zhongjian_asp_reader_x.asp文件
  ttmpffilea="nd_js_ajax_kernel_zhongjian_asp_reader_x.asp"
  
if havssssaaaqw="" then
 havssssaaaqw="1"
call createfile("../../"&htmlfld&"/"&ttmpffilea,zhongjian_ajax_asp_cont,true)

end if

  
content2="{$$"&now_dingcen_labelname&"("&now_dingcen_params&")"&"}"


'h_curfile="xxxfirstned"很重要
h_curfile="xxxfirstned"
complie_dir="../../"&nd_web_admin_folder&"/"&"adminKernel/"
ajax_exe_asp=replace_label_main(content2,"sys/sys123.asp")



Randomize '初始化随机数生成器。
rnddd = cstr(clng(Rnd(255)*99999)+200)&cstr(clng(Rnd(255)*99999)+100)&cstr(clng(Rnd(255)*99999)+1) '产生随机数

div_namea="nd_div_x_"&rnddd


js_ajax_a_t_file="nd_js_ajax_kernel_label_x_"&now_dingcen_labelname&"_"&md5(now_dingcen_params)&".asp"

call createfile("../../"&htmlfld&"/"&js_ajax_a_t_file,ajax_exe_asp,true)
  
    js_ajax_conta=loadfile("../../inc/ND_js_asp_ajax_template.asp")
	
	
	
	cang_ss_a=split(now_dingcen_params,",")
	
	
	errvvvaar=0
	ajax_asp_file_url_cang=""
	
	for iccca=0 to ubound(cang_ss_a)
	

	
	dttass1=lcase(trim(cang_ss_a(iccca)))
	if left(dttass1,16)="$xx_request_asp$" then
	cang_mma=mid(dttass1,17,len(dttass1)-17+1)
	
	cang_vva=find_url_zhi(my_cang_paa,cang_mma)
	ajax_asp_file_url_cang=ajax_asp_file_url_cang&cang_mma&"="&cang_vva&"&"
	
	end if
	
	if left(dttass1,12)="$xx_var_asp$" then
	errvvvaar=1
	exit for
	end if

	
	
	next
	
	
	if ajax_asp_file_url_cang<>"" then ajax_asp_file_url_cang=left(ajax_asp_file_url_cang,len(ajax_asp_file_url_cang)-1)
	
	
	
  ajax_asp_file_url_cang=replace(ajax_asp_file_url_cang,"=","$denghaoaspcpu1$")
  ajax_asp_file_url_cang=replace(ajax_asp_file_url_cang,"&","$adnnhaoaspcpu1$")
  ajax_asp_file_url_cang=replace(ajax_asp_file_url_cang,"?","$wnnehaoaspcpu1$")  
  
  
  
  


 if clng(nddd_is_qiye)=1 then
weburla="../../"&nd_webhtml_output_folder_qiye&"/"&"1.asp"
else 
weburla="../../"&nd_webhtml_output_folder&"/"&"1.asp"
end if


weburlqq=RelativePath2RootPathv(weburla) 


weburlaa=GetUrlpath()&weburlqq 
weburlaas=weburlaa



href_url_linkot=js_ajax_a_t_file

ConsultUrlxa=weburlaas

aaalinksss=lcase(trim(DefiniteUrlxxc(href_url_linkot,ConsultUrlxa)))


  Randomize '初始化随机数生成器。
rnddd = cstr(clng(Rnd(255)*99999)+200)&cstr(clng(Rnd(255)*99999)+100)&cstr(clng(Rnd(255)*999)+60)'产生随机数



        '特殊标记
     	sttrattr="$ndx_aspfilea_rpit_teshu_biaoji$"
    
   	enndsttr="$ndx_aspfilea_rpit_teshu_biaoji$"
	
	
	
	
     js_zxml=loadfile("../../inc/zxml.js")
	 
	  
   js_ajax_conta=replace(js_ajax_conta,"$complie$bz_start$",sttrattr)  
   js_ajax_conta=replace(js_ajax_conta,"$complie$bz_end$",enndsttr)    
   js_ajax_conta=replace(js_ajax_conta,"$complie$ajax_asp_file_temp$",ttmpffilea)  
   js_ajax_conta=replace(js_ajax_conta,"$complie$ajax_asp_file$",aaalinksss)    
   js_ajax_conta=replace(js_ajax_conta,"$complie$html_file_div_name$",div_namea)       
   js_ajax_conta=replace(js_ajax_conta,"$complie$ajax_url_cang$",ajax_asp_file_url_cang) 
   js_ajax_conta=replace(js_ajax_conta,"$complie$ajax_url_cang$",ajax_asp_file_url_cang)    
   js_ajax_conta=replace(js_ajax_conta,"$complie$rnd$",rnddd) 
   
   if havzmled="" then
     havzmled="1"
   js_ajax_conta=replace(js_ajax_conta,"$complie$zxml.js$",js_zxml)
   else
   js_ajax_conta=replace(js_ajax_conta,"$complie$zxml.js$","")
   end if
   
   
   
   
   my_cang_paaaa2=replace(my_cang_paac,"\","/")
if instr(1,my_cang_paaaa2,"/",1)<>0 then

   my_cang_paaaa2=replace(my_cang_paaaa2,"/","_")

end if
   my_cang_paaaa2=replace(my_cang_paaaa2,"?","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"&","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"|","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"'","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"!","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"#","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"$","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"%","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"^","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"<","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,">","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"(","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,")","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"{","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"}","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,";","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,",","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"=","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,":","_")	
    my_cang_paaaa2=replace(my_cang_paaaa2,"[","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"]","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"~","_")
    my_cang_paaaa2=replace(my_cang_paaaa2,"`","_")		
    my_cang_paaaa2=replace(my_cang_paaaa2,"@","_")	
	my_cang_paaaa2=replace(my_cang_paaaa2,"&","_")	
	my_cang_paaaa2=replace(my_cang_paaaa2,"*","_")		
	my_cang_paaaa2=replace(my_cang_paaaa2,".","_")																			
   
     ajaxffileazz="nd_js_ajax_kernel_rpasp_"&xuhao_fangzhichongfu_js&"_"&lable_nname&"_"&left(md5(lable_paramee),12)&my_cang_paaaa2&".asp"
   
 call createfile("../../"&htmlfld&"/"&ajaxffileazz,js_ajax_conta,true)  
   
   
 

href_url_linkot=ajaxffileazz


aaalinksss2=lcase(trim(DefiniteUrlxxc(href_url_linkot,ConsultUrlxa)))
   
   
         
   	if errvvvaar=1 then
	
	div_sttr="不能为 标签参数含$xx_var_asp$i之类的最顶层的标签 生成其ajax的js文件调用,请去掉所有最顶层的标签参数里的$xx_var_asp$i之类的参数"
	else
	
	  Randomize '初始化随机数生成器。
	
	asp_get_url_cang_code=chr(60)&chr(37)&vbcrlf&"Fy_Url1=Request.ServerVariables("&chr(34)&"QUERY_STRING"&chr(34)&")"&vbcrlf&"Fy_a1=split(Fy_Url1,"&chr(34)&"&"&chr(34)&")"&vbcrlf&"strUrl="&chr(34)&chr(34)&""&vbcrlf&"for Fy_x1=0 to ubound(Fy_a1)"&vbcrlf&"if instr(Fy_a1(Fy_x1),"&chr(34)&"="&chr(34)&")=len(Fy_a1(Fy_x1)) then"&vbcrlf&"Fy_v ="&chr(34)&chr(34)&""&vbcrlf&"else"&vbcrlf&"Fy_v = mid(Fy_a1(Fy_x1),instr(Fy_a1(Fy_x1),"&chr(34)&"="&chr(34)&")+1,len(Fy_a1(Fy_x1)))"&vbcrlf&"end if"&vbcrlf&"Fy_Cs_name= left(Fy_a1(Fy_x1),instr(Fy_a1(Fy_x1),"&chr(34)&"="&chr(34)&")-1)"&vbcrlf&"strUrl=strUrl&Fy_Cs_name&"&chr(34)&"="&chr(34)&"&Fy_v&"&chr(34)&"&"&chr(34)&""&vbcrlf&"Next"&vbcrlf&"if strUrl<>"&chr(34)&chr(34)&" then strUrl=left(strUrl,len(strUrl)-1)"&vbcrlf&"  strUrl=replace(strUrl,"&chr(34)&"="&chr(34)&","&chr(34)&"$denghaoaspcpu1$"&chr(34)&")"&vbcrlf&" strUrl=replace(strUrl,"&chr(34)&"&"&chr(34)&","&chr(34)&"$adnnhaoaspcpu1$"&chr(34)&")"&vbcrlf&"  strUrl=replace(strUrl,"&chr(34)&"?"&chr(34)&","&chr(34)&"$wnnehaoaspcpu1$"&chr(34)&")"&vbcrlf&chr(37)&chr(62)
	
	div_sttr=asp_get_url_cang_code&"<div id='"&div_namea&"'>载入中...</div>"&"<script type=text/javascript src='" & aaalinksss2 &"?ajax_asp_file_url_cang="&chr(60)&chr(37)&"=strUrl"&chr(37)&chr(62)&"&"&"rndnumberndaspcpux="& cstr(rnd(255))&"'></script>"
	
	end if



my_aaa = div_sttr


set Reg=nothing

	
   
'---------end qqq1------------------  
  
  
  
  
  
  
  
    end if
	
	
	

   
   new_d_len=len(my_aaa)
    
   contt=qian_aaa&my_aaa&after_aaa
   
   
enndsttr="<!--nd_complie_linkx_end:[$$"&lable_nname&"("&lable_paramee&")]xx-->"
enndiiposs=instr(1,contt,enndsttr,1)



'nowiiposs=enndiiposs+len(enndsttr)
nowiiposs=pos_ab11+6
now_dingcen_label_e_pos=now_dingcen_label_e_pos+(new_d_len-old_d_len)
   
   
   
   
   

   
   
   


end if






end if







end if



end if




loop

get_all_aspfile_s_ajax=contt


end function


























function load_files_all_type(is_qiye)


end function





function get_file_type111(filenamea)
get_file_type=""
filenamea=lcase(trim(filenamea))
for aiaa=0 to loaded_file_types.length-1
aassaa=trim(rep_xml_br(loaded_file_types(aiaa).selectSingleNode("filetype").text))
bbssbb=trim(rep_xml_br(loaded_file_types(aiaa).selectSingleNode("filename").text))

bbssbb=lcase(trim(bbssbb))

if bbssbb=filenamea then

get_file_type=lcase(aassaa)

end if
next

end function

function get_file_type(filenamea)


get_file_type="123"
exit function

get_file_type=session("nd_filetype_cachex_"&lcase(trim(filenamea)))

end function



'pindao_id必填
function get_all_id_by_one_id(aspfilename2,pindao_id,zhuanti_id,class_id,view_id)



if instr(1,aspfilename2,"?",1)<>0 then
sfilename=left(aspfilename2,instr(1,aspfilename2,"?",1)-1)
else
sfilename=aspfilename2
end if

sfilename=replace(sfilename,"\","/")
if instr(1,sfilename,"/",1)<>0 then

sfilename=mid(sfilename,instrrev(sfilename,"/")+1,len(sfilename)-(instrrev(sfilename,"/")+1)+1)
end if




ftypppe2=get_file_type(sfilename)
doit_mode="no"
doit_mode=get_url_mode_to_make_html(ftypppe2)




'千万不要先清空glbal_nd_x_pindao_id,glbal_nd_x_zhuanti_id,glbal_nd_x_class_id之类
'千万不要先清空glbal_nd_x_pindao_id,glbal_nd_x_zhuanti_id,glbal_nd_x_class_id之类
'千万不要先清空glbal_nd_x_pindao_id,glbal_nd_x_zhuanti_id,glbal_nd_x_class_id之类


if pindao_id<>"" then 

glbal_nd_x_pindao_id=pindao_id

set Rs44s1=server.CreateObject("adodb.recordset")
sql="select * from [ND_channel] where sys_content_type_name='"&pindao_id&"'"
Rs44s1.open sql,conn,1,1
if not Rs44s1.eof then
lanmu_typeaa=Rs44s1("lanmu_type")
end if
Rs44s1.close
set Rs44s1=nothing

else


lanmu_typeaa=channel_typea

end if


if view_id<>"" then


glbal_nd_x_view_id=view_id

hhhsai=0
if lanmu_typeaa="Article" then
hhhsai=1
set Rs44s11=server.CreateObject("adodb.recordset")
sql="select * from [ND_Article] where id="&view_id&""
Rs44s11.open sql,conn,1,1
end if
if lanmu_typeaa="down" then
hhhsai=1
set Rs44s11=server.CreateObject("adodb.recordset")
sql="select * from [ND_down] where id="&view_id&""
Rs44s11.open sql,conn,1,1
end if
if lanmu_typeaa="pic_or_sp" then
hhhsai=1
set Rs44s11=server.CreateObject("adodb.recordset")
sql="select * from [ND_pic_or_sp] where id="&view_id&""
Rs44s11.open sql,conn,1,1
end if
if lanmu_typeaa="cp" then
hhhsai=1
set Rs44s11=server.CreateObject("adodb.recordset")
sql="select * from [ND_prod] where id="&view_id&""
Rs44s11.open sql,conn,1,1
end if


if lanmu_typeaa="ND_danArticle_class" then
hhhsai=1
set Rs44s11=server.CreateObject("adodb.recordset")
sql="select * from [ND_prod_class] where id="&view_id&""
Rs44s11.open sql,conn,1,1
end if


if hhhsai=1 then
if not Rs44s11.eof then
glbal_nd_x_class_id=Rs44s11("classid")
glbal_nd_x_zhuanti_id=Rs44s11("SpecialID")
glbal_nd_x_pindao_id=Rs44s11("sys_content_type")
end if
end if




end if




if zhuanti_id<>"" then
hhhsai=0
if lanmu_typeaa="Article" then
hhhsai=1
set Rs44s111=server.CreateObject("adodb.recordset")
sql="select * from [ND_Article_Special] where id="&zhuanti_id&""
Rs44s111.open sql,conn,1,1
end if
if lanmu_typeaa="down" then
hhhsai=1
set Rs44s111=server.CreateObject("adodb.recordset")
sql="select * from [ND_down_Special] where id="&zhuanti_id&""
Rs44s111.open sql,conn,1,1
end if
if lanmu_typeaa="pic_or_sp" then
hhhsai=1
set Rs44s111=server.CreateObject("adodb.recordset")
sql="select * from [ND_pic_or_sp_Special] where id="&zhuanti_id&""
Rs44s111.open sql,conn,1,1
end if
if lanmu_typeaa="cp" then
hhhsai=1
set Rs44s111=server.CreateObject("adodb.recordset")
sql="select * from [ND_prod_Special] where id="&zhuanti_id&""
Rs44s111.open sql,conn,1,1
end if



glbal_nd_x_zhuanti_id=zhuanti_id

if hhhsai=1  then
if not Rs44s111.eof then
glbal_nd_x_pindao_id=Rs44s111("sys_content_type")
end if
end if




end if



if class_id<>"" then
glbal_nd_x_class_id=class_id
hhhsai=0
if lanmu_typeaa="Article" then
hhhsai=1
set Rs44s1111=server.CreateObject("adodb.recordset")
sql="select * from [ND_Article_class] where id="&class_id&""
Rs44s1111.open sql,conn,1,1
end if
if lanmu_typeaa="down" then
hhhsai=1
set Rs44s1111=server.CreateObject("adodb.recordset")
sql="select * from [ND_down_class] where id="&class_id&""
Rs44s1111.open sql,conn,1,1
end if
if lanmu_typeaa="pic_or_sp" then
hhhsai=1
set Rs44s1111=server.CreateObject("adodb.recordset")
sql="select * from [ND_pic_or_sp_class] where id="&class_id&""
Rs44s1111.open sql,conn,1,1
end if
if lanmu_typeaa="cp" then
hhhsai=1
set Rs44s1111=server.CreateObject("adodb.recordset")
sql="select * from [ND_prod_class] where id="&class_id&""
Rs44s1111.open sql,conn,1,1
end if

if lanmu_typeaa="cp" then
hhhsai=1
set Rs44s1111=server.CreateObject("adodb.recordset")
sql="select * from [ND_prod_class] where id="&class_id&""
Rs44s1111.open sql,conn,1,1
end if

if lanmu_typeaa="ND_danArticle_class" then
hhhsai=1
set Rs44s1111=server.CreateObject("adodb.recordset")
sql="select * from [ND_prod_class] where id="&class_id&""
Rs44s1111.open sql,conn,1,1
end if



if hhhsai=1  then
if not Rs44s1111.eof then
glbal_nd_x_pindao_id=Rs44s1111("sys_content_type")
end if
end if




end if


end function







'pindao_id必填
function get_qiangzhi_url_cang_main(aspfilename1,cid_var_name,pindao_id_var_name,zid_var_name,viewid_var_name,bodya)


get_qiangzhi_url_cang_main=aspfilename1


end function






'规范化url参数的格式,以统一 按url参数和文件名md5后 的html文件名
'此版本的规范化 只适用于新动软官方标签库v080811里运行输出的各url,对于自定义asp代码而来的url输出,请修改inc/ND_moban_page_type.asp里的function get_url_mode_to_make_html函数
'对于自定义asp代码而来的url输出,请修改inc/ND_moban_page_type.asp里的function get_url_mode_to_make_html函数
function get_qiangzhi_url_cang(aspfilename,cid_var_name,pindao_id_var_name,zid_var_name,viewid_var_name,bodya)

if instr(1,aspfilename,"?",1)<>0 and len(aspfilename)>=instr(1,aspfilename,"?",1)+1 then
urlcan=mid(aspfilename,instr(1,aspfilename,"?",1)+1,len(aspfilename)-instr(1,aspfilename,"?",1))
else
urlcan=""
end if

if instr(1,aspfilename,"?",1)<>0 then
sfilename=left(aspfilename,instr(1,aspfilename,"?",1)-1)
else
sfilename=aspfilename
end if

sfilename=replace(sfilename,"\","/")
if instr(1,sfilename,"/",1)<>0 then

sfilename=mid(sfilename,instrrev(sfilename,"/")+1,len(sfilename)-(instrrev(sfilename,"/")+1)+1)
end if



ftypppe=get_file_type(sfilename)

doit_mode="no"

doit_mode=get_url_mode_to_make_html(ftypppe)

'type: pindao ,zhuanti  ,class ,view

if doit_mode="no" then
get_qiangzhi_url_cang=aspfilename
else


urldddta=split(doit_mode,",")





'勿必先清空:
'勿必先清空:
glbal_nd_x_pindao_id=""
glbal_nd_x_zhuanti_id=""
glbal_nd_x_class_id=""
glbal_nd_x_view_id=""







'======== s====================================
for urldddtaiii1=0 to ubound(urldddta)
urldddta_1=urldddta(urldddtaiii1)
urldddta_1_1=split(urldddta_1,"|")
urla_minga=urldddta_1_1(0)
urla_typee=urldddta_1_1(1)



'-------1----
if urla_typee="class" then

if cid_var_name<>"" then urla_minga=cid_var_name



'-------1
if instr(1,aspfilename,"&"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"&"&urla_minga&"=",1)
orrg=psspo1+len("&"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_class_id=valuuue
end if
'-------1



'-------1_1
if instr(1,aspfilename,"?"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"?"&urla_minga&"=",1)
orrg=psspo1+len("?"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_class_id=valuuue
end if
'-------1_1



end if
'-------end 1----


'-------2----
if urla_typee="pindao" then

if pindao_id_var_name<>"" then urla_minga=pindao_id_var_name




'-------1
if instr(1,aspfilename,"&"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"&"&urla_minga&"=",1)
orrg=psspo1+len("&"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_pindao_id=valuuue
end if
'-------1



'-------1_1
if instr(1,aspfilename,"?"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"?"&urla_minga&"=",1)
orrg=psspo1+len("?"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_pindao_id=valuuue
end if
'-------1_1



end if
'-------end 2----

'-------3----
if urla_typee="zhuanti" then

if zid_var_name<>"" then urla_minga=zid_var_name







'-------1
if instr(1,aspfilename,"&"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"&"&urla_minga&"=",1)
orrg=psspo1+len("&"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_zhuanti_id=valuuue
end if
'-------1



'-------1_1
if instr(1,aspfilename,"?"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"?"&urla_minga&"=",1)
orrg=psspo1+len("?"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_zhuanti_id=valuuue
end if
'-------1_1



end if
'-------end 3----




'-------4----
if urla_typee="view" then

if viewid_var_name<>"" then urla_minga=viewid_var_name



'-------1
if instr(1,aspfilename,"&"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"&"&urla_minga&"=",1)
orrg=psspo1+len("&"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_view_id=valuuue
end if
'-------1



'-------1_1
if instr(1,aspfilename,"?"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"?"&urla_minga&"=",1)
orrg=psspo1+len("?"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_view_id=valuuue
end if
'-------1_1



end if
'-------end 4----


next
'========end s====================================




pindao_id1=glbal_nd_x_pindao_id
zhuanti_id1=glbal_nd_x_zhuanti_id
class_id1=glbal_nd_x_class_id
view_id1=glbal_nd_x_view_id



call get_all_id_by_one_id(aspfilename,pindao_id1,zhuanti_id1,class_id1,view_id1)

pindao_id=glbal_nd_x_pindao_id
zhuanti_id=glbal_nd_x_zhuanti_id
class_id=glbal_nd_x_class_id
view_id=glbal_nd_x_view_id



for urldddtaiii=0 to ubound(urldddta)
urldddta_1=urldddta(urldddtaiii)
urldddta_1_1=split(urldddta_1,"|")
urla_minga=urldddta_1_1(0)
urla_typee=urldddta_1_1(1)



'-------1----
if urla_typee="class" then

if cid_var_name<>"" then urla_minga=cid_var_name



'-------1
if instr(1,aspfilename,"&"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"&"&urla_minga&"=",1)
orrg=psspo1+len("&"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_class_id=valuuue
end if
'-------1



'-------1_1
if instr(1,aspfilename,"?"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"?"&urla_minga&"=",1)
orrg=psspo1+len("?"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_class_id=valuuue
end if
'-------1_1






if instr(1,aspfilename,"&"&urla_minga&"=",1)=0 and instr(1,aspfilename,"?"&urla_minga&"=",1)=0 then

if class_id<>"" then
aspfilename=JoinChara(aspfilename)
aspfilename=aspfilename&urla_minga&"="&class_id
else
aspfilename=aspfilename
end if

end if

end if
'-------end 1----


'-------2----
if urla_typee="pindao" then

if pindao_id_var_name<>"" then urla_minga=pindao_id_var_name




'-------1
if instr(1,aspfilename,"&"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"&"&urla_minga&"=",1)
orrg=psspo1+len("&"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_pindao_id=valuuue
end if
'-------1



'-------1_1
if instr(1,aspfilename,"?"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"?"&urla_minga&"=",1)
orrg=psspo1+len("?"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_pindao_id=valuuue
end if
'-------1_1









if instr(1,aspfilename,"&"&urla_minga&"=",1)=0 and instr(1,aspfilename,"?"&urla_minga&"=",1)=0 then

if pindao_id<>"" then
aspfilename=JoinChara(aspfilename)
aspfilename=aspfilename&urla_minga&"="&pindao_id
else
aspfilename=aspfilename
end if

end if

end if
'-------end 2----

'-------3----
if urla_typee="zhuanti" then

if zid_var_name<>"" then urla_minga=zid_var_name







'-------1
if instr(1,aspfilename,"&"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"&"&urla_minga&"=",1)
orrg=psspo1+len("&"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_zhuanti_id=valuuue
end if
'-------1



'-------1_1
if instr(1,aspfilename,"?"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"?"&urla_minga&"=",1)
orrg=psspo1+len("?"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_zhuanti_id=valuuue
end if
'-------1_1








if instr(1,aspfilename,"&"&urla_minga&"=",1)=0 and instr(1,aspfilename,"?"&urla_minga&"=",1)=0 then

if zhuanti_id<>"" then
aspfilename=JoinChara(aspfilename)
aspfilename=aspfilename&urla_minga&"="&zhuanti_id
else
aspfilename=aspfilename
end if

end if

end if
'-------end 3----




'-------4----
if urla_typee="view" then

if viewid_var_name<>"" then urla_minga=viewid_var_name








'-------1
if instr(1,aspfilename,"&"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"&"&urla_minga&"=",1)
orrg=psspo1+len("&"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_view_id=valuuue
end if
'-------1



'-------1_1
if instr(1,aspfilename,"?"&urla_minga&"=",1)<>0 then
psspo1=instr(1,aspfilename,"?"&urla_minga&"=",1)
orrg=psspo1+len("?"&urla_minga&"=")
for psspo1_1=orrg to len(aspfilename)
if mid(aspfilename,psspo1_1,1)="&"  then
psspo1_1_1=psspo1_1
exit for
end if
if  psspo1_1=len(aspfilename) then
psspo1_1_1=psspo1_1+1
exit for
end if
next
if orrg>len(aspfilename) then
valuuue=""
else
valuuue=mid(aspfilename,orrg,psspo1_1_1-orrg)
end if
glbal_nd_x_view_id=valuuue
end if
'-------1_1



if instr(1,aspfilename,"&"&urla_minga&"=",1)=0 and instr(1,aspfilename,"?"&urla_minga&"=",1)=0 then

if view_id<>"" then
aspfilename=JoinChara(aspfilename)
aspfilename=aspfilename&urla_minga&"="&view_id
else
aspfilename=aspfilename
end if

end if

end if
'-------end 4----


next

aspfilename=get_md5_htm_filename_by_aspfilename(aspfilename,bodya,htm_ext_ming,0,"")

get_qiangzhi_url_cang=aspfilename

end if

end function






'各个入口:

function kaozhan_htmed_main(weburl,towhere_folder,per_run_htmed_num)
is_qiye=0
nddd_is_qiye=is_qiye
call load_htm_ext_ming(is_qiye)
call kaozhan_all_htm(weburl,is_qiye,per_run_htmed_num,towhere_folder)
end function




%>